Maven不会覆盖我本地存储库中的eclipse项目的构建版本。我只更改了META-INF / MANIFEST.MF文件,但Maven似乎没有认识到这一点,因此不会覆盖本地存储库中的工件。我怎么强迫它覆盖?这是maven日志:
[INFO]
[INFO] --- maven-jar-plugin:2.2:jar (default-jar) @ message ---
[INFO]
[INFO] --- maven-install-plugin:2.3:install (default-install) @ message ---
[INFO] **Skipped re-installing C:\dev\ws\Message\target\message-0.0.1.jar to C:\Users\Tim\.m2\repository\samba\message\message\0.0.1\message-0.0.1.jar, seems unchanged**
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.915s
[INFO] Finished at: Fri Sep 03 15:22:12 CEST 2010
[INFO] Final Memory: 7M/175M
[INFO] ------------------------------------------------------------------------
答案 0 :(得分:0)
好的,我想我刚刚看到Maven没有将METAINF / MENIFEST.MF文件与目标中的其他文件一起部署。似乎我必须以某种方式解决这个问题。对不起,我是Maven的新手。
答案 1 :(得分:0)
将RELEASE版本与maven一起使用时要小心。你不应该“重新部署”他们 - 因为合同是他们永远不会改变。如果将RELEASE版本部署到全局 Maven存储库(例如Nexus),则无法再次重新部署它。如果需要更改,您必须构建新版本。
在开发阶段,使用SNAPSHOT版本(0.0.1-SNAPSHOT)。这些可以更改和重新部署。
如果您只使用本地存储库,那么规则就不那么强了,但您应该了解RELEASE / SNAPSHOT版本的差异。
答案 2 :(得分:0)
问题是我使用bundle插件生成osgi包。有了这些,bundle插件就会生成它自己的MANIFEST.MF文件,而不会使用我放入资源的文件。事实上,当我尝试使用自己的MANIFEST.MF文件时,除了bundle插件生成的文件之外,我也遇到了一些错误。