繁体   English   中英

ClassLoader.getResourceAsStream在JAR文件中找不到资源

[英]ClassLoader.getResourceAsStream can't find resource in JAR file

我在Eclipse中有一个Java项目,其中有几个具有主要方法的类,以及一个具有属性的资源文件夹。 资源文件夹包含“ config / config.properties”,位于构建路径中(在Eclipse->构建路径->添加到构建路径中的Project Explorer中,右键单击资源文件夹)。 我可以使用Eclipse中的主要方法运行类,并且可以正确加载资源。 我正在使用一种主要方法从一个类中生成一个可运行的JAR文件(在Package Explorer-> Export-> Java / Runnable JAR文件中右键单击Java类文件)。 当我执行JAR文件('java -jar myApp.jar')时,ClassLoader.getResourceAsStream(“ config / config.properties”)返回null。 我尝试在属性文件路径前添加多个“ ../”,但是(1)这不起作用,(2)中断了在Eclipse中运行的执行。 该应用程序在命令行上不接受任何参数。 任何想法是什么问题?

您的jar中是否有META-INF/MANIFEST.MF文件?

将以下行添加到文件中:

Class-Path: .

之后不要忘了空行。 几年前,我遇到了类似的问题。

有关manifest.mf文件的更多信息

尝试使用Jar导出向导导出jar。 您可以通过右键单击->“导出”->“ Jar文件”(而不是“可运行的JAR文件”)来打开它。

这将允许您单独选择要包括的每个文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM