2017-02-10 61 views
1

maven folder structure加載特性從資源目錄文件(IDE VS運行的JAR)

罐內容來自可運行的JAR。我想這個組合:

1) CalendarSample.class.getResourceAsStream("/test/client_secrets.json")); //IDE 
2) CalendarSample.class.getResourceAsStream("test/client_secrets.json")); 
3) CalendarSample.class.getResourceAsStream("/resources/test/client_secrets.json")); //JAR 
4) CalendarSample.class.getResourceAsStream("resources/test/client_secrets.json")); 

當從內部IDE運行Java程序(日食MARS)1個線工程

從獨立運行的JAR在運行時(WIN)3個線工程)

使用的類加載器:

5) CalendarSample.class.getClassLoader().getResourceAsStream("/test/client_secrets.json")); 
6) CalendarSample.class.getClassLoader().getResourceAsStream("test/client_secrets.json")); //IDE 
7) CalendarSample.class.getClassLoader().getResourceAsStream("/resources/test/client_secrets.json")); 
8) CalendarSample.class.getClassLoader().getResourceAsStream("resources/test/client_secrets.json")); //JAR 

當使用類加載器從內部IDE中運行的java程序(蝕MARS)線6件作品

當從獨立運行的JAR(WIN)8個線工程)運行

我失去了一些基本的東西,什麼是首選的方式做到這一點? 是否有組合可以在JAR & & IDE中運行?

+0

看起來你在你的'POM.xml'中有一個問題,所以'maven-resource-plugin'包含'resources'文件夾而不是copyimng它的內容。 .. –

回答

0

工作在我身邊,你能檢查你的jar是否包含一個帶有json的'test'文件夾嗎? (用7zip打開你的jar,例如看看)

+0

是的,有拉鍊json。我編輯了帖子 – Levijatanu