Java – Slf4j在控制台上不显示:

huangapple go评论97阅读模式
英文:

Java - Slf4j not showing on the console :

问题

  1. 我正在尝试在控制台上显示这个日志信息 log.info("String is:" + str1); 但是根本没有显示如何在控制台上显示 log.info 信息
  2. @Slf4j
  3. @RequiredArgsConstructor
  4. @Component
  5. public class TTD {
  6. public ResponseEntity<InputStreamResource> transform() {
  7. try {
  8. ObjectMapper mapper = new ObjectMapper();
  9. Jsonb jsonb = JsonbBuilder.create();
  10. EcrionIntegration ei = new EcrionIntegration();
  11. ei.setHelloWord("Hello Sharon");
  12. String str1 = mapper.writeValueAsString(ei);
  13. log.info("String is:" + str1);
  14. } catch (Exception ex) {
  15. throw new RuntimeException(ex);
  16. }
  17. }
  18. }
  19. 控制台显示的是附带的图片
  20. [附件中的控制台][1]
  21. [1]: https://i.stack.imgur.com/mwVFy.png
英文:

I am trying to display this log.info("String is:"+str1); on the console but it doesn't show at all, how do I display log.info on the console?

  1. @Slf4j
  2. @RequiredArgsConstructor
  3. @Component
  4. public class TTD {
  5. public ResponseEntity&lt;InputStreamResource&gt; transform() {
  6. try {
  7. ObjectMapper mapper = new ObjectMapper();
  8. Jsonb jsonb = JsonbBuilder.create();
  9. EcrionIntegration ei = new EcrionIntegration();
  10. ei.setHelloWord(&quot;Hello Sharon&quot;);
  11. String str1 = mapper.writeValueAsString(ei);
  12. log.info(&quot;String is:&quot;+str1);
  13. } catch (Exception ex) {
  14. throw new RuntimeException(ex);
  15. }
  16. }

The console is displaying the attached image:

The console without the logs

答案1

得分: 1

以下是翻译好的内容:

不需要拥有 log4j.xml 或 logback.xml 文件进行日志配置。

如果你在使用 Lombok 导入 Slf4j,请确保在你的 pom.xml 文件中添加以下依赖项:

  1. <dependency>
  2. <groupId>org.projectlombok</groupId>
  3. <artifactId>lombok</artifactId>
  4. <version>1.18.24</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>org.slf4j</groupId>
  8. <artifactId>slf4j-api</artifactId>
  9. <version>1.7.26</version>
  10. </dependency>
  11. <dependency>
  12. <groupId>org.slf4j</groupId>
  13. <artifactId>slf4j-simple</artifactId>
  14. <version>1.7.21</version>
  15. </dependency>
英文:

It is not required to have a log4j.xml or logback.xml files for logging configuration.

If you are importing Slf4j with Lombok, make sure you have the following dependencies in your pom.xml file:

  1. &lt;dependency&gt;
  2. &lt;groupId&gt;org.projectlombok&lt;/groupId&gt;
  3. &lt;artifactId&gt;lombok&lt;/artifactId&gt;
  4. &lt;version&gt;1.18.24&lt;/version&gt;
  5. &lt;/dependency&gt;
  6. &lt;dependency&gt;
  7. &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
  8. &lt;artifactId&gt;slf4j-api&lt;/artifactId&gt;
  9. &lt;version&gt;1.7.26&lt;/version&gt;
  10. &lt;/dependency&gt;
  11. &lt;dependency&gt;
  12. &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
  13. &lt;artifactId&gt;slf4j-simple&lt;/artifactId&gt;
  14. &lt;version&gt;1.7.21&lt;/version&gt;
  15. &lt;/dependency&gt;

答案2

得分: -1

你需要在资源文件夹中创建一个配置文件,其中包含标准输出(STDOUT)的追加器。

例如:

  1. log4j.xml
  1. <configuration>
  2. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  3. <encoder>
  4. <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
  5. </encoder>
  6. </appender>
  7. <root level="debug">
  8. <appender-ref ref="STDOUT" />
  9. </root>
  10. </configuration>

或者在 application.properties 文件中,例如:

  1. log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender
  2. log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout
  3. log4j.appender.consoleAppender.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
英文:

You need a configuration file in your resources folder with STDOUT appender.

For example:

  1. log4j.xml
  1. &lt;configuration&gt;
  2. &lt;appender name=&quot;STDOUT&quot; class=&quot;ch.qos.logback.core.ConsoleAppender&quot;&gt;
  3. &lt;encoder&gt;
  4. &lt;pattern&gt;%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n&lt;/pattern&gt;
  5. &lt;/encoder&gt;
  6. &lt;/appender&gt;
  7. &lt;root level=&quot;debug&quot;&gt;
  8. &lt;appender-ref ref=&quot;STDOUT&quot; /&gt;
  9. &lt;/root&gt;
  10. &lt;/configuration&gt;

Or in application.properties file, eg:

  1. log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender
  2. log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout
  3. log4j.appender.consoleAppender.layout.ConversionPattern=[%t] %-5p %c %x - %m%n

答案3

得分: -1

你需要在 XML 文件的 <configuration>...</configuration> 内部添加以下行:
ref="CONSOLE" 将帮助在控制台上打印。

  1. <root>
  2. <level value="INFO" />
  3. <appender-ref ref="CONSOLE" />
  4. <appender-ref ref="FILE" />
  5. </root>
英文:

You need to add the below line in your XML file inside <configuration>...</configuration>
ref="CONSOLE" will help to print on console.

  1. &lt;root&gt;
  2. &lt;level value=&quot;INFO&quot; /&gt;
  3. &lt;appender-ref ref=&quot;CONSOLE&quot; /&gt;
  4. &lt;appender-ref ref=&quot;FILE&quot; /&gt;
  5. &lt;/root&gt;

huangapple
  • 本文由 发表于 2020年8月19日 22:42:10
  • 转载请务必保留本文链接:https://go.coder-hub.com/63489477.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定