0

我需要在 Windows 2012 R2 Powershell(或命令行)的特定位置使用 log4j 配置启动 java jar。

我尝试了以下命令:

java -jar C:\myApp\myApp.jar -Duser.dir=C:\myApp -Dlog4j.configuration=file:C:\myApp\resources\log4j.xml

但是应用程序无法以 log4j 错误启动(在 WARN 之后):

log4j:WARN No appenders could be found for logger (cz.mypackage.Myclass).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

具有相同 log4j.xml 的相同 jar 文件,在 Windows 2003(具有相同版本的 Java)上由相同的命令运行正确启动。

我还尝试了 log4j 文件 URI 的一些修改(“file://C:\myApp\resources\log4j.xml”、“file://C:/myApp/resources/log4j.xml”、“file://C :\\myApp\\resources\\log4j.xml" 或 "file:C:\\myApp\\resources\\log4j.xml"),就像我在 Internet 上找到的那样。

有没有人有任何建议,如何启动罐子?

解决方案:神奇之处在于使用引号并从管理员 powershel 运行(我不知道为什么,但它有效):

java -jar "C:\myApp\myApp.jar" -Duser.dir=C:\myApp -Dlog4j.configuration=file:C:\myApp\resources\log4j.xml
4

1 回答 1

0

神奇之处在于使用引号并从管理员 powershel 运行(我不知道为什么,但它有效):

java -jar "C:\myApp\myApp.jar" -Duser.dir=C:\myApp -Dlog4j.configuration=file:C:\myApp\resources\log4j.xml
于 2015-11-13T13:09:00.797 回答