Hadoopのソースコンパイラ

1.ソースコンパイラの理由

  • ApacheのHadoopの公式ソース32、およびWindows 64ビットです。

2.準備をコンパイルします

  • Ubuntuの(64位)
  • 準備のjarパッケージ(Hadoopのソース、JDK8、Mavenの、アリ、いるProtobuf)
    • Hadoopの-2.8.5-src.tar.gz
    • JDK-8u144-linuxの-x64.tar.gz
    • apacheの-ANT-1.9.14-bin.tar.gz(ビルドツール、とパッケージ化)
    • apacheの-のmaven-3.6.0-bin.tar.gz
    • いるProtobuf-2.5.0.tar.gz(フレームワークの配列)

2.1インストールいるProtobuf

### 1. 安装 glibc-headers 和 g++ 命令
yum install glibc-headers
yum install gcc-c++

### 2. 安装 make 和 cmake
yum install make
yum install cmake

### 3. 解压 protobuf
tar -zxvf protobuf-2.5.0.tar.gz -C /opt/module

### 4. 进入 protobuf 主目录: /opt/module/protobuf-2.5.0
cd /opt/module/protobuf-2.6.0

### 5. 执行以下命令
./configure
make
make check
make install
ldconfig

### 6. 配置环境变量
vim /etc/profile
#LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/opt/module/protobuf-2.5.0
export PATH=$PATH:$LD_LIBRARY_PATH

### 7. 验证命令
protoc --version

### 8. 安装 openssl 库
yum install openssl-devel

### 9. 安装 ncurses-devel 库
yum install ncurses-devel

3.コンパイルソース

### 1. 解压源码到 /opt/ 目录
tar -zxvf hadoop-2.8.5-src.tar.gz -C /opt/

### 2. 进入到 hadoop 源码主目录
cd /opt/hadoop-2.8.5-src

### 3. 通过 maven 执行编译命令 (大约半小时)
mvn package -Pdist,native -DskipTests -Dtar

### 4. 编译成功后,hadoop 包在 /opt/hadoop-2.8.5-src/hadoop-dist/target 下

質問4.コンパイルプロセス

  • 「必要なクラスが欠落しています:ORG / apacheの/ Mavenの/プラグイン/確実な/ SurefireReportParameters」
### 解决方案,pom.xml 中添加以下内容
<project>
  ...
  <build>
    <!-- To define the plugin version in your parent POM -->
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.17</version>
        </plugin>
        ...
      </plugins>
    </pluginManagement>
    <!-- To use the plugin goals in your POM or parent POM -->
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.17</version>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>


参考文献:

おすすめ

転載: www.cnblogs.com/linkworld/p/10926946.html