JsonPathは、出力のデバッグログを無視します

ティナJ:

私が使用しているJsonPathJavaでの私のJSONの解析作業のために。削除するにはどんな方法があるdebugのコードを実行している時にログは?

だから、基本的に、私は単にMavenの中に私の解析コードを実行しようとしています:

String pageName = JsonPath.read(json, "$['pageInfo']['pageName']");
        System.out.println(pageName);

実行している場合でも、jarアーティファクトファイルを、それが最初の行として次のことを示しています。

0 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $['pageInfo']['pageName']

この行を無視するには?これは、実行中の各時に表示されるJsonPath.read()コールを。

アップデート

当初、私はいくつかの赤い色のログを得ていたlog4jので、これらの依存関係を追加しました。赤のログが消えますが、上記のログ(今黒)が登場しました!

<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-simple -->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.5</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.5</version>
</dependency>

私はまた、追加logBackの依存関係を。しかし、まだコードスニペットを認識することができません。

ここでは、画像の説明を入力します。

SamzSakerz:

この質問は、実際に彼らの公式githubのページに2017年に頼まれました。

あなたのように見えるが、ログ実装としてlogbackを使用する必要があります

ここではgithubの問題からandreasaronssonが提供するコードがあります

LoggerContext logContext = (LoggerContext) LoggerFactory.getILoggerFactory();
ch.qos.logback.classic.Logger log = logContext.getLogger("com.jayway.jsonpath.internal.path.CompiledPath");
log.setLevel(Level.INFO);

あなたの依存関係でこれを必要とします

<dependencies>
   <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-api</artifactId>
      <version>2.11.1</version>
   </dependency>
   <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-core</artifactId>
      <version>2.11.1</version>
   </dependency>
   <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.2.3</version>
   </dependency>
</dependencies>

問題の詳細閉鎖のためにあなたはそれを見つけることができるここに

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=209578&siteId=1