1.准備工作
- jdk:
- eclipse:
- Maven:
- libprotoc :https://developers.google.com/protocol-buffers/
- hadoop:http://www.apache.org/dyn/closer.cgi/hadoop/common/
添加開源中國maven庫:http://maven.oschina.net/home.html
maven\conf\settings.xml
<localRepository>path</localRepository>
<localRepository>path</localRepository>
<mirrors> <mirror> <id>nexus-osc</id> <mirrorOf>*</mirrorOf> <name>Nexus osc</name> <url>http://maven.oschina.net/content/groups/public/</url> </mirror> </mirrors>
2.導入
- 將hadoop源碼解壓到一個目錄,注意目錄層次不要太深,否則可能無法解壓。
- 進入hadoop-maven-plugins文件夾,執行 mvn install
- 返回源碼根目錄,執行 mvn eclipse:eclipse –DskipTests
- eclipse在任意目錄創建新的WorkSpace
- eclipse設置Maven:window->preference->maven->{Installations...;user Settings:maven\conf\settings.xml}
- eclipse:File->inport->Existing Projects into WorkSpace->Hadoop源碼根目錄
3.錯誤處理
- maven下載pom失敗->重新操作
- hadoop-streaming中build path錯誤->Java Build Path->Source:
- 刪除...hadoop-yarn-server-resourcemanager/conf
- Link Source:源碼根目錄/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/conf,再隨便起個名字;inclusion patterns:capacity-scheduler.xml;exclusion patters:**/*.java
- org.apache.hadoop.io.serializer.avro.TestAvroSerialization
- 下載avro-tools-1.7.4.jar:http://archive.apache.org/dist/avro/avro-1.7.4/java/
- 進入目錄:源碼根目錄\hadoop-common-project\hadoop-common\src\test\avro
- java -jar path/to/avro-tools-1.7.4.jar compile schema avroRecord.avsc ..\java
- eclipse 刷新
- org.apache.hadoop.ipc.protobuf.TestProtos
- 進入目錄:源碼根目錄\hadoop-common-project\hadoop-common\src\test\proto
- protoc --java_out=../java *.proto
- eclipse 刷新
- project->clean..->clean all projects & Build the entire workspace
