Java 运行时获取了错误的工件
让我把问题格式化一点:) 问题是 在运行时无法解析enum的特定值(它是在项目的pom.xml中包含的依赖关系的1.2版本中引入的-此版本的库称为common-1.2.jar) 可能由 在运行时执行错误的依赖项 说明: 在生成的war文件的WEB-INF/lib目录中,有三个版本的公共库(common-1.2.jar、common-1.1.jar、common-1.0.jar),并且在运行时使用旧版本。我通过在我的枚举上调用values()方法检查了它:在1.2版本中没有新添加的value 我执行了mvn dependency:tree,那里只有一个公共库——common-1.2.jar。但是——可以说是观察者——使用的是错误的 问题Java 运行时获取了错误的工件,java,maven,maven-3,war,Java,Maven,Maven 3,War,让我把问题格式化一点:) 问题是 在运行时无法解析enum的特定值(它是在项目的pom.xml中包含的依赖关系的1.2版本中引入的-此版本的库称为common-1.2.jar) 可能由 在运行时执行错误的依赖项 说明: 在生成的war文件的WEB-INF/lib目录中,有三个版本的公共库(common-1.2.jar、common-1.1.jar、common-1.0.jar),并且在运行时使用旧版本。我通过在我的枚举上调用values()方法检查了它:在1.2版本中没有新添加的value 我执
有没有办法找出项目在运行时使用旧版本的原因?使用EclipseEE+maven插件来跟踪依赖关系 在EclipseEE中,它安装了maven插件。所以只需单击pom.xml,在编辑器窗口底部,选择“依赖层次结构”。在右侧,选择commons-1.1.jar或commons-1.0.jar,在左侧的“依赖层次结构”中,您将看到哪个jar导入了旧jar 在pom.xml中,找到工件,然后添加
commons1.0或1.1
请确保右侧不存在任何commons-1.0.jar或commons-1.1.jar。因此,您的问题将得到解决。您如何部署您的war,可能您正在覆盖,这就是问题所在。我使用
mvn package
命令。这就是你想要的?在mvn包
之后,你有一个war
,你用它做什么?@RC。我使用java命令在服务器上运行它:java-XX:PermSize=512-XX:MaxPermSize=512-Xms1024m-Xmx1024m-Dconfig=/my/conf/file.properties-jar/my/project/file.war
感谢您的提示。上面提到的视图在EclipseIDE中也可供Java开发人员使用,但在右侧似乎只有commons-1.2.jar。我现在很困惑。