当前位置: 首页 > 知识库问答 >
问题:

无法从maven项目生成日志

江衡
2023-03-14

我创建了一个maven项目,其中包含测试用例及其相应的功能。验证检查的所有功能都放在src/main/java下。测试用例也是src/test/java的一部分。我已经把log4j放在下面了。src/main/resources中的属性。

# Root logger option
log4j.rootLogger=info, file,stdout

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/tmp/reports/logs/log.out
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

#To console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

此外,在每个类文件中,我添加了以下行以及以下导入:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

日志的初始化:

static Logger log = LoggerFactory.getLogger(<class name>.class);

并且使用log.info ("")创建日志。

还有,在pom中。xml,添加了以下依赖项:

    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.25</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-simple -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.25</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.25</version>
    </dependency>

但是我看到日志没有在控制台以及文件/tmp/报告/日志/log.out中生成,但是日志文件/tmp/报告/日志/log.out成功创建,但是没有日志在控制台中也没有附加日志。

我确实在控制台上看到html" target="_blank">日志,但它们肯定不在log4j中。阿佩德。斯特杜特。布局转换模式=%d{yyyy-MM-dd HH:MM:ss}%-5p%c{1}:%L-%m%n格式。

我假设它们是在控制台上生成的,因为我已经导入了与log4j相关的jar。

有人能帮忙吗?

共有1个答案

谭建章
2023-03-14

我使用Log4j记录器而不是slf4j,并生成了日志。这是一个工作环境。

import org.apache.log4j.Logger;

static Logger log = Logger.getLogger(KNMIRules.class);
 类似资料:
  • [错误]生成无法读取1个项目->[帮助1][错误] [错误]项目com.example.angularjs:demo:0.0.1-快照(C:\users\vvk\download\demo\POM.xml)有1个错误[错误] com.example.angularjs:demo:0.0.1-快照:无法解析的父POM:无法传输项目org.springframework.boot:spring-boo

  • 问题内容: 是否有任何IDE(或与此相关的任何其他工具)都能够基于现有项目生成POM? 我最终按照Peter和Sal的建议,使用Maven原型生成了POM,然后将现有资源移入了。感谢您的帮助。 问题答案: 您可以在IntelliJ中执行此操作,但是它生成的POM可能比手工编写要复杂得多。如果您的项目当前在JBuilder或Eclipse中,则可以首先导入它。 相反,我建议您在POM中描述您的项目,

  • 我有一个Maven(eclipse)项目,我想将其转换为Maven工件,以便其他人可以从中生成新项目。 要创建工件,我做了: cd到我的proj dir,pom。xml存在 在此之后,我可以看到 。m2\存储库已添加我的项目<但是 现在,我不确定该在标记中给出什么,因为这是一个本地存储库。 但是,我无法使用生成新项目: 它要求我选择原型,但之后我得到错误: [错误]无法执行目标组织。阿帕奇。专家插

  • 我们在4人的小团队中工作。我们使用docker来部署我们的服务。其中一个服务是java Spring Boot项目,它是在使用maven构建docker映像后部署的。要制作Spring Boot服务的docker映像,我们使用。 有趣的是,我的同事在建立SpringBoot服务的docker形象方面没有问题。我得到了maven的错误信息: 我试图从,重新启动docker并删除所有图像。 后来我尝试

  • 我首先通过执行生成了一个gwt maven项目- mvn原型:生成-Darch etypeGroupId=org.codehaus.mojo-Darch etypeartifactId=gwt-maven-plugin-Darch etypeVersion=2.7.0 在那之后,pom。xml如下所示: 然后我通过内置的eclipse函数将这个项目导入eclipse——导入现有的Maven项目。

  • org.gradle.api.ProjectConfigurationException:配置项目“:App”时出现问题。在