我收到的错误有很多答案,但我尝试过的每个解决方案(至少我理解)并没有解决我的问题。
我在Eclipse中的项目布局如下所示:
MavenProject1
的src
资源
等
MavenProject2
的src
资源
等
MavenProjectX
的src
资源
等
每个项目编译并运行正常。但我想要做的是使用MavenProject1中的一个项目,比如MavenProject2中的一些代码。我已经更新了构建路径和信息,以便我可以将MavenProject2导入MavenProject1并引用我想要的方法。
MavenProject1中对MavenProject2方法的引用枚举并且没有在编辑器中给出错误(即com.MavenProject2.Method()),并且MavenProject1编译。但是当我尝试运行它时,我得到下面的错误。我已经尝试修复类路径(据我所知,这可能是错误的),我已经尝试在项目的运行配置中添加项目,外部jar,几乎每个选项,但我一直遇到同样的错误在MavenProject1中调用MavenProject2中的方法。
[WARNING] java.lang.reflect.InvocationTargetException at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at
> java.lang.reflect.Method.invoke(Unknown Source) at
> org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297) at
> java.lang.Thread.run(Unknown Source) Caused by:
> java.lang.NoClassDefFoundError: com/MavenProject2/Method_From2 at
> com.MP1.MP1.main(CAPI.java:154) ... 6 more Caused by:
> java.lang.ClassNotFoundException: com.MavenProject2.Method_From2
答案 0 :(得分:0)
首次构建当前项目所依赖的项目时,请确保它们存储在本地maven存储库中。然后当你将它们作为依赖项添加到你的项目的pom.xml时,这应该有希望解决它的构建。