我是Java日志API的新手,需要一些帮助解决这个问题: 在创建应用程序时,我的配置文件存储在项目的根文件夹中,所以我用-Djava.util.logging.config.file=logging.properties
开关来运行程序。 但后来我导出可执行JAR。 如何现在配置日志记录?当我使用-D开关指定配置文件的路径时,它不起作用。如何在运行JAR时配置日志记录?
8
A
回答
6
所以你必须在命令行或快捷方式指定日志属性不能指定JVM参数到MANIFEST.MF文件:
java -Djava.util.logging.config.file=logging.properties -jar yourjar.jar
否则,你可以打包属性文件(在你的情况下是logging.properties),请阅读 启动并将这些设置放入系统属性中。
3
此外,日志管理使用两个可选的系统性质 允许在读取所述初始配置更多的控制:
"java.util.logging.config.class" "java.util.logging.config.file"
这两个属性可以经由偏好设置API或将命令 的行属性定义为“java”命令,或者将系统属性 定义传递给JNI_CreateJavaVM。
如果设置了“java.util.logging.config.class”属性,则 属性值将被视为类名称。给定的类将加载 ,对象将被实例化,并且该对象的构造函数 负责读取初始配置。 (该对象 可能使用其他系统属性来控制其配置。) 备用配置类可以使用readConfiguration(InputStream) 来定义LogManager中的属性。
所以,要么使用java.util.logging.config.file
系统属性,并存储配置文件出的jar文件(如果你希望能够以自定义日志记录属性调试或分析其中一些可能是一个好主意奇怪的行为),或者将配置文件存储到任意位置(例如在jar文件中),并使用java.util.logging.config.class
系统属性加载和实例化将读取jar文件中的文件的类(使用Class.getResourceAsStream()
)。
相关问题
- 1. 企业库日志记录 - 如何在运行时获取配置的日志记录级别?
- 2. 如何配置jackrabbit-standalone-2.6.0.jar的日志记录器
- 3. JBoss日志记录配置
- 4. 基于日志记录级别的SpringBoot日志记录配置
- 5. 如何在spring-mvc中配置slf4j进行日志记录?
- 6. 如何在通过Maven导入时配置jTDS日志记录?
- 7. 在Glassfish配置公共日志记录
- 8. OSGi - 外部jar文件的日志记录配置
- 9. 如何在spring java配置中设置日志记录属性?
- 10. 如何配置Hudson执行的Subversion操作的日志记录?
- 11. Python 3.4日志记录配置
- 12. 使用Lift配置日志记录
- 13. Python日志记录配置文件
- 14. 休眠4.x日志记录配置
- 15. 事件日志记录的log4net配置
- 16. 如何在Python中将日志记录配置到系统日志?
- 17. 在日志中找不到SharePoint 2010错误,如何配置日志记录?
- 18. 如何使用具有多个日志记录和多个配置文件的Log4Net进行日志记录?
- 19. 如何在Django中配置Python日志记录模块?
- 20. 如何在版本7.1.3中配置jboss日志记录
- 21. SLF4J - Logback:如何在运行时配置记录器?
- 22. 如何配置日志目录
- 23. EntLib日志记录 - 在运行时添加/编辑TraceListeners
- 24. IIS高级日志记录在加载时不会运行?
- 25. 在运行时重新加载tomcat日志记录?
- 26. log4net在运行时启用调试日志记录
- 27. Orchard CMS如何进行日志记录?
- 28. 在Gunicorn使用aiohttp和aiopg时如何设置日志记录?
- 29. 如何配置Microsoft企业库日志记录应用程序块以处理任何日志记录类别?
- 30. GWT日志记录设置