Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JAR清单类路径,使用文件夹而不是JAR_Java_Jar_Resources_Classpath_Classloader - Fatal编程技术网

Java JAR清单类路径,使用文件夹而不是JAR

Java JAR清单类路径,使用文件夹而不是JAR,java,jar,resources,classpath,classloader,Java,Jar,Resources,Classpath,Classloader,我有以下目录结构 --conf | | | --foo.properties | --lib | --application.jar 在我的application.jar的MANIFEST.mf文件中,我有以下条目:类路径:../conf/ 在jar内部的类(由jar的主方法调用)中,我尝试使用以下代码将foo.properties文件作为类路径资源加载 URL properties = this.getClass().getClassLoader().getResourc

我有以下目录结构

--conf
|   |
|   --foo.properties
|
--lib
   |
   --application.jar
在我的application.jar的
MANIFEST.mf
文件中,我有以下条目:
类路径:../conf/

在jar内部的类(由jar的主方法调用)中,我尝试使用以下代码将foo.properties文件作为类路径资源加载

URL properties = this.getClass().getClassLoader().getResource("foo.properties");
但是,无法从类路径中找到资源。为什么类路径属性在jar清单中不起作用?我是否误解了它对应用程序类加载器类路径的影响

我正在使用以下命令运行应用程序


java-jar应用程序.jar

它应该可以工作。不确定您的
MANIFEST.mf
格式是否正确。我用Maven生成了我的,它可以工作。这就是我的
MANIFEST.mf
的样子

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: john.doe
Class-Path: ../conf/
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_92
Main-Class: com.basaki.misc.clazzpath.FindResource
你可以找到一个完整的例子