【发布时间】:2013-07-31 21:19:15
【问题描述】:
在我的 pom.xml 文件中,我有:
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>1.1.0</version>
</dependency>
现在,在我的源代码中,我有一行:
import org.apache.hadoop.util.ProgramDriver;
当我运行 mvn install 时,所有代码都能完美编译。但是,当我运行 mvn exec:java 时,我得到一个 class not found 错误 -- org.apache.hadoop.util.ProgramDriver 找不到。
为什么我可以安装代码却不能运行它?谢谢。
我正在使用 org.codehaus.mojo 执行插件。
配置无效:
<mainClass>myMainClass</mainClass>
<executableDependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
</executableDependency>
【问题讨论】:
-
exec插件的配置是什么样的?根据文档,封闭项目的依赖项应该在类路径上。 -
我只有我的主类的名称
myMainClass 也许你可以发布它应该是什么样子的答案?或者链接我?谢谢。 -
尝试从命令行运行它。
java -cp hadoop-core-1.1.0.jar Main看看会发生什么。您将需要cp选项的所有依赖项 jar,其中包含分号分隔和完整路径信息。 -
@LeeMeador 我不能真正尝试,因为我有很多其他的 jars 和依赖项。
-
使用
mvn -X记录一堆包含格式良好的类路径的内容。您可能会看到问题,但您可以将其剪切并粘贴到 shell 脚本或批处理文件中以尝试命令行操作。
标签: java maven classnotfoundexception