Intellij在库中找不到类

时间:2015-10-02 12:52:29

标签: maven hadoop intellij-idea

我有一个奇怪的问题。我正在尝试调试一个hadoop工作。我已经创建了一个主要类为org.apache.hadoop.util.RunJar的配置文件。我可以在浏览对话框中找到此信息,方法是查看external libraries,然后查看hadoop-core-xxx.jarorg.apache.hadoop,然后utilsRunJar

当我尝试实际运行此配置时,它会失败并显示日志消息Error: Could not find or load main class org.apache.hadoop.util.RunJar。奇怪的是,我在intellij中有另一个项目完全相同的AFAICT工作。但是这个特定的项目只是拒绝找到RunJar

两者都有相同的maven依赖:

    <dependency>
        <groupId>org.apache.hadoop</groupId>
        <artifactId>hadoop-core</artifactId>
        <version>0.20.2-cdh3u6</version>
        <scope>provided</scope>
    </dependency>

两者都将工作目录设置为/usr/local/opt/hadoop121,并且都选中了single instance only框。我很困难,为什么我可以调试一个项目,但另一个项目找不到。

我已同步项目,无效的缓存,确认hadoop-core-xxx.jar列在external libraries下...我错过了什么?我在OSX上使用最新版本的intellij IDEA。

1 个答案:

答案 0 :(得分:0)

问题是hadoop库是provided,即从jar中排除。注释掉以下行解决了这个问题:

<scope>provided</scope>