2016-02-06 74 views
4

在Android Studio中的Gradle中,我注意到提供依賴範圍是可選的。例如:Android上的Gradle中的默認依賴範圍是什麼?

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    compile 'com.android.support:design:23.1.1' 
      'org.hamcrest:hamcrest-core:1.3' 
      'org.hamcrest:hamcrest-library:1.3' 
} 

請注意,最後兩個庫沒有附加編譯範圍。我將它留空,我仍然可以同步gradle。如果沒有在這裏指定什麼默認範圍?

回答

2

作用域實際上是給定依賴關係配置的標籤。它非常依賴於你正在使用的gradle插件(即:java插件或android插件)。 如果您不添加任何配置標籤,它將被保存爲未標記的依賴項。 大多數情況下,如果您需要compile依賴項並且不添加標籤,那麼您的構建將會中斷。如果不破則可能是因爲:

  • 你實際上並不需要依賴
  • 您使用的是gradle這個插件,它很好地處理未標記的依賴
  • 或者(更可能),依賴關係是已經在您的構建緩存或部分構建中,因此編譯器仍然能夠找到這些類,但是如果清理該項目將會中斷。

相關文檔on dependency configuration for gradle

+0

呀我明白你的意思。 Gradle同步成功,但是當我去實際運行應用程序時,它說它找不到範圍。它非常奇怪的同步雖然成功。謝謝。 – j2emanue

相關問題