在程序中运行时,我可以将日志写入文件中。但是,在制作程序的jar文件并使用运行该jar之后ProcessBuilder
,它会生成该文件,但不会写入任何内容。任何帮助表示赞赏。
这是属性文件
log4j.rootLogger=fatal,CONSOLE,R
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=H://decompilerDirectory//logs/testlog.log
log4j.appender.R.MaxFileSize=60000KB
log4j.appender.R.MaxBackupIndex=15
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d - %c - %p - %m%n
这就是我运行程序的方式
ProcessBuilder pb = new ProcessBuilder("C:\\Program Files\\Java\\jdk1.7.0_13\\bin\\javaw.exe", "-jar", "ta.jar", filePath);
Process p = pb.start();
p.waitFor();
您是否在jar的清单文件中设置了主类?
这与main方法无关,而与main类有关。检查我给你的链接。如果要从命令行运行jar文件,则需要在其清单文件中设置其主类,否则,请指定要执行其主函数的类。
java -jar jar-file-name.jar com.yourcompany.yourclass main-method-arguments-spearated-with-spaces
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句