2013-07-08 37 views
8

我試圖添加一個目錄作爲Android Studio(GameBaseUtils)中的依賴項。我已經看到其他的答案只是發佈正確的gradle配置爲他們的特定問題,但我不明白我能如何適應他們的答案我的情況。Android Studio導入模塊Gradle生成錯誤

這裏是我做過什麼:

步驟一:文件 - >導入模塊 - >導航到目錄並選中它。

第二步:文件 - >項目結構 - >模塊 - >選擇我的應用程序 - >依賴關係 - >添加模塊作爲依賴到我的項目。

現在我的代碼沒有任何紅線表示導入模塊時出錯。然而,當我選擇建立我收到以下錯誤:

Gradle: package com.google.example.games.basegameutils does not exist 
Gradle: cannot find symbol class BaseGameActivity 
Gradle: cannot find symbol variable super 
... 

這裏是我的應用程序

buildscript { 
repositories { 
    mavenCentral() 
} 
dependencies { 
    classpath 'com.android.tools.build:gradle:0.4' 
} 
} 
apply plugin: 'android' 

dependencies { 
compile files('libs/android-support-v4.jar') 
} 

android { 
compileSdkVersion 17 
buildToolsVersion "17.0.0" 

defaultConfig { 
    minSdkVersion 8 
    targetSdkVersion 17 
} 
} 

我怎樣才能正確導入這個外部庫,可以請你解釋如何和的build.gradle文件你的解決方案爲什麼有效

回答

8

所以這裏是我如何解決我的問題:

,而不是添加

dependencies { 
    compile files('libs/android-support-v4.jar') 
    compile project(':Module') 
} 

你必須寫:

dependencies { 
    compile files('libs/android-support-v4.jar', '../Module') 
} 

2點說,模塊(或目錄)可以在實際的一個以上的目錄中找到。所以如果你想訪問一個模塊,這是上面的2個目錄,你只需要寫:'../../ModuleName'

你必須手動添加模塊到build.gradle,因爲Android Studio仍在開發中,並沒有完成用於編輯項目結構的UI。

如果這不能解決您的問題,試試這樣做:(我會推薦這種方法。這是我如何真正做到這一點)

Examplestructure:

  • 項目

    • 庫(正常文件夾)
      • 單詞數
    • 模塊1

settings.gradle

include ':Module1', ':libraries:Module2' 

的build.gradle(模塊1)

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.+' 
    } 
} 
apply plugin: 'android' 

dependencies { 
    compile project(':libraries:Module2') 
} 

android { 
    compileSdkVersion 18 
    buildToolsVersion "18.0.1" 

    defaultConfig { 
     minSdkVersion 8 
     targetSdkVersion 11 
    } 
} 

的build.gradle(單詞數)

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.+' 
    } 
} 
apply plugin: 'android-library' 

dependencies { 
    compile 'com.android.support:support-v4:18.0.0' 
} 

android { 
    compileSdkVersion 18 
    buildToolsVersion "18.0.1" 

    defaultConfig { 
     minSdkVersion 8 
     targetSdkVersion 11 
    } 

    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      java.srcDirs = ['src'] 
      resources.srcDirs = ['src'] 
      res.srcDirs = ['res'] 
     } 
    } 
} 

這應該現在工作得很好。 使一切工作的100%,按照此步驟:

  1. 刪除.idea文件夾
  2. 刪除所有*.iml文件
  3. 重新啓動的Android Studio和按Import Project
  4. 與gradle這個項目中選擇目錄
  5. Import project from external model > Gradle> next> finish

通過這一步,一切都應該很好。如果有任何問題,請告訴我:)

+0

鏈接的答案鏈接是否更改?它確實幫了我,我想接受這個答案。 – KDEx

+0

我改進了我的答案。第一個是我刪除鏈接的方式。第二個是我會推薦的 – maysi

-1

請勿通過Studio界面添加模塊。始終在build.gradle中直接進行更改,然後重新導入到Studio中。

此外,將插件依賴項更新爲com.android.tools.build:gradle:0.4.+以獲取最新的0.4。*版本。