2013-07-12 49 views
13

我剛剛下載了OEPE(開普勒)並安裝了m2e和m2e-wtp連接器。 我發現,在這個路徑下:首選項 - > Maven->生命週期映射 - >打開工作區生命週期映射數據有一個預先配置的xml文件,它說maven應該忽略AspectJ的編譯目標,我假設這就是爲什麼AspectJ運行時庫不會添加到項目中,因此項目不會被eclipse識別爲AspectJ項目。aspectj-maven-plugin在開普勒生命週期中未涵蓋

<?xml version="1.0" encoding="UTF-8"?> 
<lifecycleMappingMetadata> 
<pluginExecutions> 
    <pluginExecution> 
     <pluginExecutionFilter> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>aspectj-maven-plugin</artifactId> 
      <versionRange>1.6</versionRange> 
      <goals> 
       <goal>compile</goal> 
      </goals> 
     </pluginExecutionFilter> 
     <action> 
      <ignore /> 
     </action> 
    </pluginExecution> 
</pluginExecutions> 

我註釋掉在XML文件中的這些線,並再次重新加載它。 現在,IDE不會忽略生命週期中的AspectJ插件標記,但pom文件卻抱怨說它無法識別執行標記。

<plugin> 
<groupId>org.codehaus.mojo</groupId> 
<artifactId>aspectj-maven-plugin</artifactId> 
<version>1.4</version> 
<dependencies> 
    <dependency> 
     <groupId>org.aspectj</groupId> 
     <artifactId>aspectjrt</artifactId> 
     <version>${aspectj.version}</version> 
    </dependency> 
</dependencies> 
<configuration> 
    <source>1.6</source> 
    <target>1.6</target> 
</configuration> 
<executions> 
    <execution> 
     <goals> 
      <goal>compile</goal> 
     </goals> 
    </execution> 
</executions> 
</plugin> 

使用靛藍M2E-WTP能夠識別<execution>標籤爲AspectJ的插件,能夠自動添加AspectJ運行庫 的項目,雖然這不是在開普勒的情況。 (我認爲這是m2e-wtp的工作,使得AspectJ項目脫離pom,但不太確定。)

Btw。我如何讓事情像Indigo一樣工作? 我知道我可以右鍵單擊該項目並將其轉換爲aspect項目以解決問題,但我希望IDE和插件從pom文件中實現此項目需要AspectJ jar。任何想法?

回答

27

這是我得到了它的工作,首先驗證你已經從AJDT更新站點安裝「AspectJ開發工具(AJDT)」和「AspectJ編譯器Eclipse的」安裝AJDT支持:http://download.eclipse.org/tools/ajdt/43/update 你可以通過這樣做「幫助/安裝新軟件」菜單項。

然後,通過使用此更新站點安裝AJDT M2E手動安裝M2E連接器: http://dist.springsource.org/release/AJDT/configurator/

+4

安裝完成後,通過右鍵單擊並配置>轉換爲Aspectj AND Maven>更新項目 – Foyta

+4

Eclipse Luna的開發版進行項目轉換:http://download.eclipse.org/tools/ajdt/44的/ dev /更新/ – ozhan

0

只是一個提醒

不要使用日食火星默認鏈接,AJDT插件使用上面的鏈接。他們完全適用於火星人