Java 从资源目录加载属性文件(IDE vs runnable JAR)
Jar内容: 我有Maven项目(Java1.8),从IDE和runnable JAR加载一些资源文件时出现问题。我尝试了以下组合:Java 从资源目录加载属性文件(IDE vs runnable JAR),java,eclipse,maven,jar,Java,Eclipse,Maven,Jar,Jar内容: 我有Maven项目(Java1.8),从IDE和runnable JAR加载一些资源文件时出现问题。我尝试了以下组合: 1) CalendarSample.class.getResourceAsStream("/test/client_secrets.json")); //IDE 2) CalendarSample.class.getResourceAsStream("test/client_secrets.json")); 3) CalendarSample.class.get
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程序(EclipseMars)时,第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程序的类加载器(EclipseMars)时,第6行可以工作
从独立可运行jar(win)运行时(第8行工作)
我是否遗漏了一些基本的东西,首选的方法是什么?
是否有在JAR和IDE中同时运行的组合?在我这边,您能检查一下您的JAR是否包含一个包含json的“测试”文件夹吗?(例如,用7zip打开您的jar查看)在我这边,您能检查一下您的jar是否包含一个包含json的“test”文件夹吗?(例如,用7zip打开您的jar以查看)看起来您的
POM.xml
有问题,因此maven资源插件
包含resources
文件夹,而不是仅复制其内容…看起来您的POM.xml
有问题,因此maven资源插件
包含resources
文件夹而不是只复制它的内容。。。