当我使用Gradle文件同步项目时,支持库 support-v4-19.1.0 会自动出现在我的外部库中。有人可以向我解释这里发生了什么,为什么?它告诉我,我需要将其包含在我的依赖项中吗?或者外部库是否自动包含在我的项目中?这是我的app.gradle文件:
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion '19.1'
defaultConfig {
minSdkVersion 9
targetSdkVersion 19
versionCode 7
versionName "3.4"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
buildTypes {
release {
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
}
dependencies {
compile 'com.google.android.gms:play-services:5.0.89'
compile fileTree(dir: 'libs', include: ['*.jar'])
}
这些是我的外部库中的3个库:
我明白为什么前两个会在那里,但不是第三个。前两个在Gradle同步期间停留,但第三个消失然后再次出现。对不起,如果这是一个菜鸟问题,谢谢你看看!
答案 0 :(得分:2)
不要担心项目视图中External Libraries文件夹中显示的内容。您的Gradle构建文件的内容是您需要专注于配置项目的内容。此文件夹是Android Studio的IntelliJ源的遗留物,但在基于Gradle的项目中失去了一些用处。支持库作为Play服务库的传递依赖项进入。如果您在$ SDK_HOME / extras / google / m2repository / com / google / android / gms / play-services / 5.0.89 / play-services-5.0.89.pom中查看Play Service的pom文件,您可以看到它:
<dependencies>
<dependency>
<groupId>com.android.support</groupId>
<artifactId>support-v4</artifactId>
<version>19.1.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
答案 1 :(得分:1)
Android Studio让您知道它是为了向后兼容您在java代码中引用的类而添加它。
外部库是AS列出所有已识别和添加的库的部分。所以它已经包含在你的项目中。