每个适当大小的Java都包含大量的jar文件。但真正让我恼火的是,您必须正确匹配不同版本的jar文件。例如,当将joda-time 2.2与hibernate-entitymanager一起使用时,如果我选择hibernate-entitymanager 4.2.2 Final,那么我将得到这个奇怪的异常:
"java.lang.AbstractMethodError: org.joda.time.contrib.hibernate.PersistentDateTime.nullSafeGet(Ljava/sql/ResultSet;[Ljava/lang/String;Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;)Ljava/lang/Object;". 如果我选择hibernate-entitymanager 3.6.8最终版,那么一切都会正常工作。我想知道是否有一个插件可以在pom.xml编辑器中自动检测不兼容的jar文件(例如。给出警告或突出显示不兼容的jars),并建议兼容的版本?
发布于 2013-07-07 11:51:19
当我在谷歌上搜索的时候,我在Github上找到了maven-dependency-versions-check-plugin。它看起来经过深思熟虑,文档看起来也很全面。(很好!)
请注意,文档中说您需要从源码签出来构建它……但实际上我在Maven Central中找到了这个插件。
也不清楚它在实践中会有多好的效果。首先,它只能与包含在各个POM文件中的依赖项兼容性信息一样好。
https://stackoverflow.com/questions/17508945
复制相似问题