Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java:log4j:jar可执行文件存在问题_Java_Log4j - Fatal编程技术网

java:log4j:jar可执行文件存在问题

java:log4j:jar可执行文件存在问题,java,log4j,Java,Log4j,当我从命令行运行“javapakcage.Main”时,我的log4j工作正常,但当我使用可执行jar(如“java-jar myjar.jar”)运行相同的程序时,我会出现以下错误: log4j:WARN No appenders could be found for logger log4j:WARN Please initialize the log4j system properly log4j.jar和log4j.properties在我的清单的类路径中 我确信它曾经正常工作过一次,

当我从命令行运行“javapakcage.Main”时,我的log4j工作正常,但当我使用可执行jar(如“java-jar myjar.jar”)运行相同的程序时,我会出现以下错误:

log4j:WARN No appenders could be found for logger
log4j:WARN Please initialize the log4j system properly
log4j.jar
log4j.properties
在我的清单的
类路径中

我确信它曾经正常工作过一次,但重建后它就不工作了。

这有帮助吗


您只能将jar文件或目录作为类路径的一部分列出。您不应该指定log4j.properties,而应该指定属性文件相对于正在执行的jar所在的目录

例如:

如果myjar.jar在基本目录中,log4j.jar在./lib/中,log4j.properties在./conf/中

myjar.jar中的类路径条目如下


类路径:lib/log4j.jar conf/

我认为您还应该能够简单地将log4j.xml(或log4j.properties)文件包含在自定义jar文件中。只要它位于Jar文件的根目录中,log4j框架就可以找到它。

属性文件不能位于类路径中。jar或目录可以是,但不能是属性文件。包含log4j.properties的目录(或包含它的jar)应该在类路径中。非常感谢@JB Nizet。它现在运转良好。