我是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日誌記錄設置