Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.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 jar外部的spring引导log4j文件?_Java_Spring_Logging_Spring Boot - Fatal编程技术网

Java jar外部的spring引导log4j文件?

Java jar外部的spring引导log4j文件?,java,spring,logging,spring-boot,Java,Spring,Logging,Spring Boot,如何通过?我能让它工作的唯一方法是将log4j.xml放在类路径上 通过:-Dlog4j.configuration=file:///c:\命令行上的log4j2.xml不起作用(尽管它在非spring启动测试应用程序中可以正常工作) 我还在spring中尝试将其作为一个环境变量/属性。尝试将此行放入您的应用程序中。属性: logging.config=file:log4j.xml 第二个选项是将系统变量传递给-dloging.config=file:log4j.xml 在这种情况下,它应该位

如何通过?我能让它工作的唯一方法是将log4j.xml放在类路径上

通过:-Dlog4j.configuration=file:///c:\命令行上的log4j2.xml不起作用(尽管它在非spring启动测试应用程序中可以正常工作)


我还在spring中尝试将其作为一个环境变量/属性。

尝试将此行放入您的
应用程序中。属性

logging.config=file:log4j.xml
第二个选项是将系统变量传递给
-dloging.config=file:log4j.xml


在这种情况下,它应该位于JAR文件之外的当前目录中。

您必须将“-Dlog4j”放在“-JAR XXXX.JAR”之前。我自己尝试。为我工作。

如果您使用gradle,并且尝试运行测试方法,您必须将以下内容添加到build.gradle中。这使测试方法能够在测试运行期间选择-Dlog4j.configurationFile=:

试验{ systemProperty“log4j.configurationFile”,System.getProperty(“log4j.configurationFile”)
}

没有办法把这个放在罐子外面吗?c:\HOME\workspace\LibConfigSearchService\build\libs>java-jar myproject-0.0.1-SN APSHOT.jar-Dlog4j.configuration=file:///c:\log4j2.xmlok,如果您想将其从commond行更改为
log4j.configuration
更改为
logging.config
ok。。但是我希望它在外部,您的日志配置永远不应该在可运行工件(imo)内部--logging.config.xml文件=fie:///c:\log4j2.xml工作正常。谢谢是的,我用它的时候把前臂放在罐子外面。在一个jar中找到了我提到的application.properties文件。