我的问题是我正在尝试使用maven(v8.0或其他版本)的特定JTidy版本。在编译期间一切正常,但在运行时maven使用maven-core-2.0.7-uber.jar
中自己的实现覆盖pom.xml中的JTidy。
可以做些什么?我的应用程序编译正常但在运行时失败,因为类加载器从maven-core-2.0.7-uber.jar
加载文件而不是pom.xml
中给出的文件。有没有办法在运行时或最好在编译时强制它?
答案 0 :(得分:0)
在<dependencyManagement>
元素中设置正确的版本应该覆盖默认值。
解决方法是将maven存储库的本地副本中的JTidy JAR替换为您想要的版本。
我还建议尝试Maven 2.2。他们更改了工件查找规则,这可能会解决您的问题。并查看有效的POM(mvn help:effective-pom
),了解哪些规则适用于插件查找。