[英]Passing external arguments to sbt jar (created via sbt-assembly)
我已經基於https://github.com/sbt/sbt-assembly創建了一個程序集jar項目,並希望在外部加載“logback.xml”和“application.conf”,它會覆蓋fatjar中打包的兩個默認文件。
類似的東西
java -jar XXX.jar -Dlogger.resource=prod-logger.xml -Dconf.resource=application.conf
非常類似於Play提供的http://www.playframework.com/documentation/2.0/SettingsLogger
可以這樣做,如果是這樣的話怎么辦?
- Logback嘗試在類路徑中查找名為logback.groovy的文件。
- 如果未找到此類文件,則logback會嘗試在類路徑中查找名為logback-test.xml的文件。
- 如果未找到此類文件,則會檢查類路徑中的文件logback.xml。
- 如果找不到任何文件,則logback將使用BasicConfigurator自動配置自身,這將導致日志記錄輸出定向到控制台。
因此,如果要在外部配置它,則需要訪問類路徑。 關於java的-jar
部分 - Java應用程序啟動器說:
使用此選項時,JAR文件是所有用戶類的源,並忽略其他用戶類路徑設置。
這包括-cp
選項。 所以你堅持使用java -cp XXX.jar:somedir Main
並將你的配置放在somedir
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.