项目中的 Maven ClassNotFoundException
Maven ClassNotFoundException in project
我正在使用以下设置:
我有一个项目A,用于分析另一个maven项目B。
项目 A 作为依赖项添加到项目 B 并使用 exec-maven-plugin 我在项目 B.
中执行项目 A 的主要 class
现在在这个主要的 class 中,我尝试使用 ClassLoader.getSystemClassLoader();
获得的 class 加载程序从项目 B 加载一个 class,但我得到一个 ClassNotFoundException
.我也尝试了 class 加载器 this.getClass().getClassLoader();
但它没有改变任何东西。
我用mvn -X
检查了class路径,添加了项目的目标目录,所有编译的classes实际上也在那里。
如果我尝试从代码中检查 class 路径,我只会得到 /opt/maven/boot/plexus-classworlds-2.5.2.jar
找到问题了。
正确的 class 加载程序是我使用 this.getClass().getClassLoader();
获得的加载程序。主要问题是我试图加载测试 class 而 target/test-classes
不在 class 路径上。
尝试使用 ClassLoader.getSystemClassLoader().loadClass("class")
我正在使用以下设置:
我有一个项目A,用于分析另一个maven项目B。 项目 A 作为依赖项添加到项目 B 并使用 exec-maven-plugin 我在项目 B.
中执行项目 A 的主要 class现在在这个主要的 class 中,我尝试使用 ClassLoader.getSystemClassLoader();
获得的 class 加载程序从项目 B 加载一个 class,但我得到一个 ClassNotFoundException
.我也尝试了 class 加载器 this.getClass().getClassLoader();
但它没有改变任何东西。
我用mvn -X
检查了class路径,添加了项目的目标目录,所有编译的classes实际上也在那里。
如果我尝试从代码中检查 class 路径,我只会得到 /opt/maven/boot/plexus-classworlds-2.5.2.jar
找到问题了。
正确的 class 加载程序是我使用 this.getClass().getClassLoader();
获得的加载程序。主要问题是我试图加载测试 class 而 target/test-classes
不在 class 路径上。
尝试使用 ClassLoader.getSystemClassLoader().loadClass("class")