其中一个组件是使用java.class.path系统属性查找persistence.xml。希望将此文件与/ conf文件夹中的jar分开。
当使用exec:exec运行应用程序时,类路径是从主jar的路径加上每个依赖项的路径形成的。我似乎无法弄清楚如何将/ conf条目添加到类路径中。
我的命令行如下所示:
mvn exec:exec -Dexec.executable =“java”-Dexec.args =“ - classpath%classpath com.testjar.App”
我尝试了“参数”参数,但如果我尝试将任何内容附加到%classpath,则执行失败。 我还尝试通过指定
将类路径条目添加到清单中<manifestEntries>
<Class-Path>/conf</Class-Path>
</manifestEntries>
在maven-jar-plugin的配置中,但清单中的条目对java.class.path属性的值没有影响。
答案 0 :(得分:4)
您可以在POM文件的“build”部分中使用元素“resources”。例如
<build>
<resources>
<resource>
<directory>src/main/resources/config</directory>
<includes>
<include>persistence.xml</include>
</includes>
<targetPath>/</targetPath>
</resource>
</resources>
...
</build>
这会将persistence.xml复制到构建输出目录中,即它会将persistence.xml放在类路径上。