標籤:eclipse hbase源碼編譯 maven m2e
首先去Apache的官網下載hbase1.0.1的源碼包
650) this.width=650;" title="捕獲.PNG" alt="wKiom1VIlOzztp7FAAAXR_GS-ow893.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/69/wKiom1VIlOzztp7FAAAXR_GS-ow893.jpg" />
由於源碼包是用maven管理,需要安裝maven
1.安裝MAVEN
下載安裝包
650) this.width=650;" title="捕獲.PNG" alt="wKioL1VIl5GhJIdIAAAcywTMAqA379.jpg" src="http://s3.51cto.com/wyfs02/M00/6C/65/wKioL1VIl5GhJIdIAAAcywTMAqA379.jpg" />
解壓檔案,Maven需要JDK的支援,配置JAVA_HOME和Path環境變數,
命令列輸入 mvn -version,如所示表示安裝成功
650) this.width=650;" title="捕獲.PNG" alt="wKioL1VImNXxjmUeAAEfGsKeaQ8643.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/65/wKioL1VImNXxjmUeAAEfGsKeaQ8643.jpg" />
2.配置本地倉庫路徑
開啟...\apache-maven-3.3.3\conf目錄下的settings.xml檔案,修改<localRepository>節點為我們自訂的的本地倉庫路徑(預設在${user.home}/.m2/repository目錄下)
650) this.width=650;" title="捕獲.PNG" alt="wKioL1VImjGw4MIJAAG0tTLaISU251.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/65/wKioL1VImjGw4MIJAAG0tTLaISU251.jpg" />
3.安裝MAVEN外掛程式 M2Eclipse(http://www.eclipse.org/m2e/)
點擊Help>Install New Software...
650) this.width=650;" title="捕獲.PNG" alt="wKiom1VInNXSlI7tAAJTEzTNuMA269.jpg" src="http://s3.51cto.com/wyfs02/M00/6C/69/wKiom1VInNXSlI7tAAJTEzTNuMA269.jpg" />
地址欄輸入 http://download.eclipse.org/technology/m2e/releases 即下載最新版本
安裝完成後重新啟動eclipse,配置Maven安裝目錄和本地倉庫目錄(不使用外掛程式內建的maven)
如所示
Window>Preferences>Maven>Installations
650) this.width=650;" title="捕獲.PNG" alt="wKiom1VInxSQXThAAAHGlB9g5k4582.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/69/wKiom1VInxSQXThAAAHGlB9g5k4582.jpg" />
Window>Preferences>Maven>User Settings
650) this.width=650;" title="捕獲.PNG" alt="wKiom1VIoAHT8MWlAAOaK5sGNx4694.jpg" src="http://s3.51cto.com/wyfs02/M00/6C/69/wKiom1VIoAHT8MWlAAOaK5sGNx4694.jpg" />
4.eclipse匯入hbase源碼
File>Import
650) this.width=650;" title="捕獲.PNG" alt="wKiom1VIoLyRB4VgAAFRQZlDLSs154.jpg" src="http://s3.51cto.com/wyfs02/M00/6C/69/wKiom1VIoLyRB4VgAAFRQZlDLSs154.jpg" />
匯入後會報Missing artifact jdk.toos:jdk.toos:jar:1.7
650) this.width=650;" title="捕獲.PNG" style="float:none;" alt="wKiom1VIo3uiU5gtAAEygzCNTBI948.jpg" src="http://s3.51cto.com/wyfs02/M00/6C/69/wKiom1VIo3uiU5gtAAEygzCNTBI948.jpg" />
650) this.width=650;" title="捕獲1.PNG" style="float:none;" alt="wKiom1VIo3vzcvSHAAMbcp4lGNw715.jpg" src="http://s3.51cto.com/wyfs02/M01/6C/69/wKiom1VIo3vzcvSHAAMbcp4lGNw715.jpg" />
很多架構都會依賴jdk中的tools.jar,但是maven倉庫中卻沒有,
如何解決這個問題呢,只需要在項目的pom.xml 檔案中加入以下配置,指定maven去本地尋找 tools.jar、
<dependency>
<groupId>jdk.tools</groupId>
<artifactId>jdk.tools</artifactId>
<version>1.7</version>
<scope>system</scope>
<systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
</dependency>
Plugin execution not covered by lifecycle configuration報錯
原因是eclipse的m2e外掛程式還沒有支援到execution
解決方案1:即 <plugins> 標籤外再套一個 <pluginManagement> 標籤
<build> <pluginManagement> <plugins> <plugin> ... </plugin> <plugin> ... </plugin> .... </plugins> </pluginManagement>< /build>
解決方案2:
Window-Perferences-Maven-Lifecycle Mapping
儲存如下內容:
<?xml version="1.0" encoding="UTF-8"?>< lifecycleMappingMetadata> <pluginExecutions> <pluginExecution> <pluginExecutionFilter> <groupId>org.codehaus.mojo</groupId> <artifactId>aspectj-maven-plugin</artifactId> <goals> <goal>compile</goal> </goals> <versionRange>[1.3,)</versionRange> </pluginExecutionFilter> <action> <ignore /> </action> </pluginExecution> </pluginExecutions>< /lifecycleMappingMetadata>
記得點擊 ”Reload workspace lifecycle mappings metadata“按鈕
問題解決。
本文出自 “天行者,在雲端” 部落格,請務必保留此出處http://tianxingzhe.blog.51cto.com/3390077/1642279
hbase源碼匯入eclipse