Java如何在war文件中“刷新”jar

时间:2016-06-16 20:52:03

标签: java

我正在调试一个项目,但是当创建一个warfile时,里面的jar似乎不是最新的,(我做了那些罐子)。 当我在服务器上测试war文件时,我意识到了这个问题,我修改了其中一个jar,以便在服务器收到请愿时发送消息。

永远不会发送此消息。 有一个像'mvn clean package'这样的命令可以重新构建所有项目吗? 我创建了像jar cvf web-archive.war这样的war文件。

2 个答案:

答案 0 :(得分:2)

根据其他评论,很可能您的图书馆罐子没有更新。您需要在创建war文件之前重建它们。如果您已经在库中使用maven,为什么不使用

  

有一个像'mvn clean package'这样的命令。重建所有的   项目

是的,有这样一个命令,它将重建项目。但请记住,它不会重建当前项目所依赖的项目(即您的库)。您需要为所有'库运行此命令。项目。

我建议使用mvn clean install,因为它会重建您的项目并将jar放入您的本地maven存储库,以便所有其他项目都可以使用您的本地构建jar。

由于您已经在使用maven,为什么不使用它来构建您的war文件。这非常方便。看看Maven WAR plugin

答案 1 :(得分:1)

可能的原因:您已更新了jar文件而未更改版本号,导致maven认为它可以使用过时的缓存副本。偶尔我不得不:

  • 删除我的目标文件夹
  • 从我的本地.m2 / cache
  • 中删除工件
  • mvn clean安装依赖项
  • mvn clean package my project