pom.xml中的库在运行时不可用

时间:2016-04-13 15:30:56

标签: java eclipse maven jar

我花了这三天的时间来解决这个问题,所以也可以发布答案,这样可以节省一些人的时间。

我创建了一个新的Maven项目,从我的本地存储库添加了一些依赖项到它的pom,并编写了代码来使用这些jar中的类。

我还尝试通过项目属性 - Java构建路径 - 库 - 添加外部JAR来删除依赖项并手动添加jar ...

无论哪种方式,在运行时我都会得到一个ClassNotFoundException或NoClassDefFoundException,说明找不到我试图访问的类的定义。这些类似乎可以在编译时找到 - 项目中没有错误,我可以通过Ctrl +单击其名称来查看类定义。

我找到的唯一解决方法是将库添加到我的tomcat / lib目录。

1 个答案:

答案 0 :(得分:1)

事实证明,我当地的Maven存储库已损坏。

我导航到我的C:\ users \ .m2目录并重命名了"存储库"目录到" oldrepository"。然后我尝试了一个"干净安装"我的项目 - 花了一段时间让Maven再次下载所有的罐子,但是当它完成时,一切都无缝地工作。

我不知道有多少存储库已损坏,如果删除整个存储库有点过分,但它对我有用。

希望这有助于将来。