首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >0.20.2带有java 5的API hadoop版本

0.20.2带有java 5的API hadoop版本
EN

Stack Overflow用户
提问于 2010-06-07 15:02:25
回答 3查看 1.2K关注 0票数 6

我已经启动了一个maven项目,试图在java 1.5.0_14中实现1.5.0_14算法,我选择了0.20.2的API版本。因此,在我使用的pom.xml中,下面的依赖项如下:

< dependency>

代码语言:javascript
复制
< groupId>org.apache.hadoop< /groupId>      
< artifactId>hadoop-core< /artifactId>      
< version>0.20.2< /version>

< /dependency>

但是,当我对org.apache.hadoop类使用导入时,会得到以下错误:

${HOME_DIR}\repository\org\apache\hadoop\hadoop-core\0.20.2\hadoop-core-0.20.2.jar(org/apache/hadoop/fs/Path.class)坏类文件:类文件有错误版本50.0,应该是49.0

有人知道我该怎么解决这个问题吗。

谢谢。

EN

回答 3

Stack Overflow用户

发布于 2010-06-07 15:06:07

默认情况下,Maven编译为JDK1.4兼容性。你得改变这个。

您需要将其添加到pom.xml中:

代码语言:javascript
复制
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.0.2</version>
    <configuration>
        <source>1.6</source>
        <target>1.6</target>
    </configuration>
</plugin>

编辑:谢谢肖恩指出Hadoop需要JDK 6

票数 2
EN

Stack Overflow用户

发布于 2010-09-14 19:14:46

我遇到了同样的问题。原来sbt本身运行在Java 5上,这是我的Mac上的默认设置,原因很愚蠢,但也是合理的。一旦我改变了我的sbt脚本,显式地从Java6开始,一切都很好。

票数 1
EN

Stack Overflow用户

发布于 2010-10-16 22:27:37

不管您的maven-编译器-plugin的源代码和目标配置(这只控制您自己的源代码是如何编译的),您必须使用1.6JVM来运行Hadoop的代码,因为它是编译后运行的" 1.6“JVM。

所以,只需安装一个1.6java运行时,并使用它来运行您的程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2990595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档