2011-06-30 56 views
0

我在Maven中爲命令行實用程序構建了一個程序集。我可以將它作爲可執行jar運行,但它失敗了,因爲我需要從外部加載配置文件。假設以下配置,我將如何運行該jar?在使用可執行jar時將配置文件加載到類路徑中

  1. 罐是在/opt/myapp/lib/myapp-assembly.jar
  2. 配置是/etc/myapp/config/settings.xml
  3. 我使用的是從類路徑加載代碼使用ClassPathResource( 「/ settings.xml中」);

任何幫助表示讚賞!

回答

1

我看到兩種方法可以做到這一點:

  1. 啓動使用jar作爲歸檔,而不是一個可執行的JAR程序,在運行時指定的主類。換句話說,請執行java -classpath /opt/myapp/lib/myapp-assembly.jar:/etc/myapp/config [您的主類的名稱]。
  2. 使用jar清單文件的Class-Path字段。其中的條目直接添加到運行時類路徑中,並且沒有任何東西阻止您指定文件系統目錄而不是另一個jar文件。所以你的清單將包含:類路徑:/ etc/myapp/config/
相關問題