java - 如何在不使用Maven的情况下在JavaFx项目中部署log4j version2

标签 java log4j2 documentum

我正在做一个连接到 Documentum 数据存储的 JavaFx 项目,我正在尝试使用 Log4jV2 添加日志记录功能我已经下载了该文件并添加了以下 Jars到我的库文件中。 (log4j-api-2.6.2.jar、log4j-core-2.6.2.jar)并成功导入以下内容:

import org.apache.log4j.LogManager;
import org.apache.log4j.xml.DOMConfigurator;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.LoggerContext;

然后我创建了一个名为 config.xml 的文件,其中包含以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<Configuration>
  <Appenders>
    <Console name="STDOUT" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>
  </Appenders>
  <Loggers>
    <Logger name="org.apache.log4j.xml" level="info"/>
    <Root level="debug">
      <AppenderRef ref="STDOUT"/>
    </Root>
  </Loggers>

并将其放在其他类旁边的源文件中,然后开始按如下方式配置它:

public class BGMController implements Initializable {
    static final org.apache.log4j.Logger logger =  LogManager.getLogger(BGMController.class.getName());

/////other content of my program /////////////////

public void initialize(URL location, ResourceBundle resources) {
     DOMConfigurator.configure("config.xml");

    //  createCheckbox();
    //  createTable();

        logger.warn(" test Sample warn message");
        logger.error(" test Sample error message");
        logger.fatal(" test  Sample fatal message");
        logger.debug(" test Sample debug message");
        logger.info("  test Sample info message");



    }


}

结果我得到了所有这些错误加上我的 Error 、 warn 、 fatal 似乎工作正常,而不是调试和信息:

知道如何解决这个问题吗?我花了好几天的时间,我不知道我在哪里犯了错误:|

    0 [JavaFX Application Thread] ERROR com.documentum.fc.common.impl.logging.LoggingConfigurator  - Problem locating log4j configuration
    3 [JavaFX Application Thread] WARN com.documentum.fc.common.impl.logging.LoggingConfigurator  - Using default log4j configuration :

最佳答案

这些消息来自 Log4j1。您应该删除 Log4j 1.x jar 并将其替换为 log4j-1.2-api-2.6.2.jar,或者完全删除它并找出正在尝试使用 Log4j 1.x 的内容。

关于java - 如何在不使用Maven的情况下在JavaFx项目中部署log4j version2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39969709/

相关文章:

eclipse - Apache Tomcat 启动警告(ExceptionInInitializerError)

java - 如何使用 ArrayList 打印 Hashmap 中的值

documentum - 如何使用 DQL 更新 Documentum 中的锁定记录?

java - 为集合的并发访问编写UT

java - 如何使用 Query、QueryBuilder 和 Test 类摆脱在 java 项目输出中打印对象内存位置?

java - restful api一直处于pending状态,tomcat出现异常

java - Log4j2 JSON布局: add custom date field in UTC

java - 为什么语言设计者使用尖括号而不是圆括号?

java - 有没有办法使用Log4j2中的RoutingAppender基于Marker路由日志

java - log4j2 中基于时间的触发策略