linux怎么查看本机内存大小
399
2022-11-16
Mac M1中Idea编译hadoop2.6.0流程
1. 背景
更换Mac M1后,发现无法编译Hadoop2.6.0了,本文总结了Mac基于Idea编译Hadoop2.6.0的难点及解决办法。
2. 下载JDK7并配置
为了防止出现Exception in thread “main” java.lang.AssertionError: Missing tools.jar at: /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home/Classes/classes.jar. Expression: file.exists()报错,在安装后,增加一个软链接:
mkdir /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home/Classes ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home/lib/tools.jar /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home/Classes/classes.jar
3. 安装protoc 2.5.0
下载:https://github.com/protocolbuffers/protobuf/releases/tag/v2.5.0
解压后,在src/google/protobuf/stubs/platform_macros.h文件中,增加arm芯片相关配置:
找到以下代码:
#else #error Host architecture was not detected as supported by protobuf
在上面增加:
#elif defined(__arm64__) #define GOOGLE_PROTOBUF_ARCH_ARM 1 #define GOOGLE_PROTOBUF_ARCH_64_BIT 1
效果如下所示:
在编译安装前,如果已经安装protoc3,修改protoc命令名,以免被覆盖:
mv /usr/local/bin/protoc /usr/local/bin/protoc3
安装protoc2.5.0:
./configure make make check make install
安装后,检查版本:
protoc --version
4. hadoop pom增加依赖
为了防止出现com.sun.javadoc不存在错误,可以在父模块hadoop-main模块下的pom.xml中增加配置:
4. 效果
执行单元测试,发现可以正常运行:
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~