簡體   English   中英

如何在jar清單類路徑中為屬性文件指定目錄?

[英]How do I specify a directory for properties files in a jar manifest classpath?

我想將我的可執行jar所需的所有.properties文件放在要運行jar文件的目錄的子目錄中。 當前,我的MANIFEST.MF看起來像這樣:

Manifest-Version: 1.0
Build-Jdk: 1.6.0_26
Main-Class: MyMainClass
Class-Path: . conf lib/dependency1.jar

如果我將.properties文件與jar文件放在同一目錄中,則一切正常。 如果將它們移至conf子目錄,則找不到它們。 我也嘗試過直接指定.properties文件的路徑,例如conf/log4j.properties

我想做的事可能嗎?

更新:這是我的可執行jar中失敗的代碼示例:

InputStream stream = getClass().getClassLoader().getResourceAsStream("myproperties.properties");

myproperties.properties位於conf子目錄中時,此語句返回空的InputStream。 log4j.properties位於conf子目錄中時,它輸出有關未找到其配置的警告消息:

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

嘗試使用org.apache.log4j.PropertyConfigurator.configure(String configFilename)

這可以用來指定日志文件的位置。

還有就是一個很好的例子在這里: http://logging.apache.org/log4j/1.2/manual.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM