Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.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 使用maven将额外的配置文件夹添加到类路径_Java_Maven_Classpath - Fatal编程技术网

Java 使用maven将额外的配置文件夹添加到类路径

Java 使用maven将额外的配置文件夹添加到类路径,java,maven,classpath,Java,Maven,Classpath,我想构建一个具有以下目录结构的独立应用程序: ./launch.bat ./config/application.properties ./lib/application.jar ./lib/dependancy1.jar ./lib/dependancy2.jar application.jar的清单文件包含一个类路径条目,其中列出了所有依赖的jar。application.properties文件作为资源加载,因此我想将/config文件夹添加到我的类路径中 在launch.bat中,应用

我想构建一个具有以下目录结构的独立应用程序:

./launch.bat
./config/application.properties
./lib/application.jar
./lib/dependancy1.jar
./lib/dependancy2.jar
application.jar
的清单文件包含一个类路径条目,其中列出了所有依赖的jar。
application.properties
文件作为资源加载,因此我想将
/config
文件夹添加到我的类路径中

launch.bat
中,应用程序通过以下方式启动:

 java -jar ./lib/application.jar
通过使用
-jar
选项,将忽略classpath系统变量或-classpath参数:(。必须在application.jar的manifest.mf中完全设置classpath。因此,我的类路径应类似于:

 Class-Path:../config dependancy1.jar dependancy2.jar
我如何使用maven实现这一点? 我当前的maven jar插件:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <mainClass>org.conffusion.myapp.Main</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>

org.apache.maven.plugins
maven jar插件
真的
org.conffusion.myapp.Main

这是Spring Boot应用程序吗?不是。如果你想拥有给定的结构,你应该看看maven汇编插件,否则你无法通过maven-jar-plugin获得。谢谢你的建议,但是metainf部分被委托给maven archiver,这些配置参数看起来与maven ja非常相似r-plugin所以没有我需要的选项。我主要喜欢-jar选项,所以我不需要在命令行上指定依赖项,但发现允许在-cp参数中添加通配符,所以将我的命令更改为
java-cp lib\*;config\org.conffusion.myapp.Main
。感谢您的努力,但您需要使用maven assembly plug在(它也支持maven archiver配置)中创建一个您喜欢的存档…使用maven jar插件,您无法在jar中创建这样的结构。。