资源导出的Maven配置

时间:2013-11-04 08:49:33

标签: java eclipse spring maven executable-jar

我在eclipse下有一个带有spring依赖项的maven项目。它在eclipse下正确运行,但是当我尝试使用eclipse export runable jar选项将项目导出到jar文件时。生成的jar文件无法运行,因为它找不到放在src / main / resources

下的xml文件

我注意到在jar文件资源中放置了myFile.jar / resources / META-INF / config.xml而不是myFile.jar / META-INF / config.xml

要修复此问题,我编辑类路径并删除包含=“* / .java”并添加排除属性。 工作一:      由maven更新:     

但是当我用maven(alt + F5)更新项目时,它会更新.classpath文件并重新出现问题。

为了解决这个问题,我补充道                                            的src / main /资源                                     的 / .XML                                                        / 的.java                                    [...]

但是它总是将include =“* / .java”添加到.classpath文件中。

我的问题是如何配置maven以便导出jar文件放在myFile.jar / META-INF / config.xml下,即使我用maven更新项目。

任何帮助都会很棒。

感谢。

2 个答案:

答案 0 :(得分:1)

使用Maven-Shade-Plugin。

从插件页面:

  

此插件提供了将工件打包的功能   uber-jar,包括它的依赖关系和阴影 - 即重命名 -   一些依赖项的包。

插件将所有依赖项捆绑到一个可运行的jar文件中。

它还允许您使用以下代码最小化jar文件的大小:

<configuration>
  <minimizeJar>true</minimizeJar>
</configuration>

有关最小化的一些信息,请参阅我的question

答案 1 :(得分:0)

你是用maven创建的可执行JAR文件吗?

如果是这样,您可以使用Resource plugin将配置文件放在您希望找到它们的位置。