2010-07-29 75 views
15

我想讓R.java生成項目在gen文件夾中。實際上,當使用Maven構建時,應用程序會構建,但是eclipse會發現錯誤,因爲它無法解析R.java文件(實際上在每次構建之後都將其放入/target/generated-sources/r/R.java位置) 。建議如何解決這個問題?Maven與Android - R.java文件生成(Eclipse)

+0

沒有人有任何想法? – LordTwaroog 2010-08-03 09:32:47

回答

16

推薦的方法是使用Maven Integration for Android開發工具和Maven Android Plugin提供的說明。從Eclipse Integration頁:

介紹

Android的官方發展努力 提供了Eclipse的 集成堅實的支持,我們希望讓 確保Maven的Android的插件可以幫助橋 Maven的,Android的,和Eclipse。此頁面 將幫助我們收集 什麼工作和不工作

解決方案

讓Maven,Android的插件工作做好 在使用adt的信息,這就是你需要 :

  1. 轉到M2Eclipse Android Integration project page和 安裝 中列出的工具要求。
  2. 當然,設置更新站點URL並在Eclipse中安裝M2Eclipse Android Integration插件。 *獲取 版本0.2.2或更高版本。它應該是 ,屬於「適用於Android開發工具的Maven Integration 」類別。
  3. 在Eclipse中,要引入您的Maven Android項目,請選擇文件 - > 導入... - > Maven - >現有Maven 項目。

所以跳到M2Eclipse Android Integration project page然後到Getting Started指南非常詳細的說明。

使用正確的工具,生成的代碼的目錄應自動添加爲Eclipse下的源目錄。

+0

我會在幾天內檢查解決方案,因爲起初我正在開展基礎項目的工作,而不用擔心它的問題。 – LordTwaroog 2010-08-25 08:44:07

+1

現在我看到我瘋狂與Android混合maven。下一代:只需在Eclipse中添加「generated-sources/r」來源。 – LordTwaroog 2010-08-31 11:41:50

+0

不幸的是,ADT不包括您構建的APK文件中的Maven依賴項,因此您可能需要M2Eclipse Android Integration插件的支持。 – 2010-12-05 23:05:44

-4

其他選項是關閉Maven的依賴,並在你的Android項目中添加外部庫

  • 公地httpclient的-3.1.jar
  • 彈簧Android的休息模板,1.0.0.M2.jar
  • 傑克遜核心ASL-1.7.2.jar
  • 傑克遜映射器-ASL-1.7.2.jar

和刪除的pom.xml,然後生成項目,並運行爲> Android應用程序

+2

因此,基本上禁用maven。非常可愛。 – monkjack 2011-05-15 00:57:24

1

我有同樣的問題,只是找到了解決方案。

原因是我從一個新的工作區開始,在這個工作區中導入了我的mavenized android項目。由於它是一個新的工作區,因此它不包含中的SDK位置。

一旦建立,一切都很好。

0

還記得,你必須有下面的代碼在Eclipse項目文件:

<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name> 
    <arguments> 
    </arguments> 
</buildCommand> 
<buildCommand> 
    <name>com.android.ide.eclipse.adt.PreCompilerBuilder</name> 
    <arguments> 
    </arguments> 
</buildCommand>