在 gradle.xml 中,我有版本 2.4 ( C:\Development ndroid-studio\gradle\gradle-2.4 ):
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="distributionType" value="LOCAL" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleHome" value="C:\Development\android-studio\gradle\gradle-2.4" />
<option name="gradleJvm" value="1.8" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/caponateLibrary" />
<option value="$PROJECT_DIR$/launcher" />
</set>
</option>
</GradleProjectSettings>
</option>
</component>
</project>
但是在我的项目 uild.gradle 文件中我有 1.3.0:
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
}
为什么这些文件有不同的 Gradle 版本?这两个 Gradle 版本之间存在哪些差异,哪个是真正的 Gradle 版本?
不要混淆 gradle 发行版 和 android gradle 插件。
1)可以在文件中定义项目使用的gradle发行版
gradle/wrapper/gradle-wrapper.properties
例如:
distributionUrl=http\://services.gradle.org/distributions/gradle-2.2.1-all.zip
distributionUrl=http\://services.gradle.org/distributions/gradle-2.4-all.zip
每个项目可以使用不同的版本。您将在
\user\.gradle\wrapper\dists
文件夹中找到分发文件。
2)Gradle 是一个构建工具,但它需要特定的插件才能工作。 Android 工具团队正在发布适用于 Gradle 的 Android 插件。
您可以在项目的build.gradle文件中定义插件。
例如:
classpath 'com.android.tools.build:gradle:1.3.1'
classpath 'com.android.tools.build:gradle:1.5.0'
每个项目(或模块)可以使用不同的版本。
第一个是实际的 gradle 二进制文件,因此也是实际的 gradle 版本。第二个是(IMO),不幸的是,它根本不是 gradle。它是 gradle 及其版本的 android 插件。