Java Eclipse显示了适当的依赖关系,但mvn包产生了带有过时依赖关系的WAR

Java Eclipse显示了适当的依赖关系,但mvn包产生了带有过时依赖关系的WAR,java,eclipse,maven,war,Java,Eclipse,Maven,War,我正在eclipse中使用maven开发一个名为a的web应用程序,介于使用m2e eclipse插件和命令行maven之间 A依赖于安装在本地repo中的自定义库B。A在其pom.xml中详细说明了此依赖关系 当我在eclipse中使用eclipse的Tomcat测试应用程序时,一切都很好——使用了最新版本的B,我在Maven dependencies文件夹中看到了这一点 但由于某些原因,当我转到命令行并运行mvn包时,产生的WAR使用的是过时的B版本。我可以说,因为当我将其部署到app se

我正在eclipse中使用maven开发一个名为a的web应用程序,介于使用m2e eclipse插件和命令行maven之间

A依赖于安装在本地repo中的自定义库B。A在其pom.xml中详细说明了此依赖关系

当我在eclipse中使用eclipse的Tomcat测试应用程序时,一切都很好——使用了最新版本的B,我在Maven dependencies文件夹中看到了这一点

但由于某些原因,当我转到命令行并运行mvn包时,产生的WAR使用的是过时的B版本。我可以说,因为当我将其部署到app server时,它的日志记录和功能以一种特定的方式被破坏,而这种方式在较新版本的B中得到了修复

我有什么办法来调试这里发生的事情吗?eclipse在做什么,mvn包没有包括在内

项目定义:

<groupId>org.com.web</groupId>
<artifactId>DocImgTransfer_Servlet</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
对某个旧版本的库的依赖:

<dependency>
  <groupId>DocImgTransfer</groupId>
  <artifactId>DocImgTransfer</artifactId>
  <version>1.0.0</version>
</dependency>
所以有三个问题:

如果只是因为maven从本地回购协议中获取了错误的版本,那么我有没有办法告诉maven重新检查它所引入的依赖版本

在这种情况下,mvn clean或mvn package-U可能会有所帮助吗

唯一的建议是在pom.xml中双击groupId、artifactId和version吗

如果只是因为maven从本地回购协议中获取了错误的版本,那么我有没有办法告诉maven重新检查它所引入的依赖版本? eclipse所指的CustomatJar-1.0.0.jar版本与maven所采用的版本相同,还是maven所采用的版本更旧? i、 e.您是否拥有CustomatJar的代码,并且您只是在以v/s的方式更新它?在战争中打包的代码确实是一个较旧的版本,例如CustomatJar-0.0.5

我想你只要把战争的拉链拉开,看看哪个版本装在罐子里就知道了

ii mvn依赖项:依赖项会告诉您maven命令行认为应该打包哪些依赖项

唯一的建议是在pom.xml中双击groupId、artifactId和version吗? 您的服务器是否有一个旧版本的CustomatJar,比如说它是lib?
您已经仔细检查了POM.xml。。。正确吗?

你能添加pom.xml吗?这有点滑稽,但我在我奶奶家过感恩节,源代码在AWS的EC2实例上,我只能在我的另一台笔记本电脑上访问,但她没有太大的wi-fi/以太网电缆放在我的笔记本电脑上!所以目前我无法显示pom.xml,但我会尽快尝试。同时,是否有任何可能的调试提示?只需查看pom.xml?你能评论一下我的观点吗。2.或3。问题谢谢我正在使用Ubuntu,我所有的jar都存储在repository文件夹中…我不知道哪一个是给你的,为什么你不试着删除包含所有jar的文件夹,然后只做mvn更新。我也在Ubuntu上。m2 repo位于/home/ubuntu/.m2/repository中。特定jar的位置类似于/home/ubuntu/.m2/repository/org/../CustomJar/CustomatJar-1.0.0.jar-在运行mvn更新之前,您建议我删除哪些内容?这将实现什么?我不太明白你在一个由我开发的、安装在本地repository/home/ubuntu/.m2/repository中的-CustomJar-1.0.0中说了什么。两个不同的版本,pom.xml中列出的1.0.0,在EclipseTomcat测试中工作,但mvn包似乎最终使用了旧版本1.0-SNAPSHOT。我仔细检查了pom.xml。我将尝试mvn dependency:dependency和该链接中的其他建议,并且我将尝试解压缩产生的war,以查看打包在其中的版本。用-U运行mvn clean或mvn包可能有帮助吗?或者这是无关的?谢谢~!mvn clean或带有-U的mvn包似乎与您的问题无关。如果您的POM中列出了1.0.0,那么应该选择1.0.0。解压时你看到了什么?