在Gradle中应用Android插件时找不到org.gradle.api.artifacts.result.ResolvedModuleVersionResult

时间:2013-12-28 08:54:37

标签: java android gradle

当我在我的Ubuntu 12.04中将gradle升级到1.10时,我无法构建android gradle项目,告诉我无法创建类型的插件' AppPlugin',调试消息就像:

15:35:52.069 [ERROR] [org.gradle.BuildExceptionReporter] Caused by: java.lang.NoClassDefFoundError: org/gradle/api/artifacts/result/ResolvedModuleVersionResult
15:35:52.073 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.build.gradle.AppPlugin.$getStaticMetaClass(AppPlugin.groovy)
15:35:52.077 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.build.gradle.BasePlugin.<init>(BasePlugin.groovy:1627)
15:35:52.101 [ERROR] [org.gradle.BuildExceptionReporter]    at com.android.build.gradle.AppPlugin.<init>(AppPlugin.groovy:73)
15:35:52.105 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.DependencyInjectingInstantiator.newInstance(DependencyInjectingInstantiator.java:62)
15:35:52.123 [ERROR] [org.gradle.BuildExceptionReporter]    at org.gradle.api.internal.plugins.DefaultPluginRegistry.loadPlugin(DefaultPluginRegistry.java:67)
15:35:52.132 [ERROR] [org.gradle.BuildExceptionReporter]    ... 43 more
15:35:52.135 [ERROR] [org.gradle.BuildExceptionReporter] Caused by: java.lang.ClassNotFoundException: org.gradle.api.artifacts.result.ResolvedModuleVersionResult
15:35:52.157 [ERROR] [org.gradle.BuildExceptionReporter]    ... 48 more

任何人都可以告诉我如何解决这个问题?或者jsut Gradle 1.10有一些问题吗?

2 个答案:

答案 0 :(得分:13)

我发现Android开源项目存在问题 - 问题跟踪器Issue #63822:无法加载类'org.gradle.api.artifacts.result.ResolvedModuleVersionResult'

回复#1 ibill ... @ pivotallabs.com

  

似乎不支持Gradle 1.10。尝试使用较旧版本的Gralde。

     

请注意,此处缺少ResolvedModuleVersionResult

     

http://www.gradle.org/docs/1.10/javadoc/org/gradle/api/artifacts/result/package-summary.html

     

但是在这里

     

http://www.gradle.org/docs/1.9/javadoc/org/gradle/api/artifacts/result/package-summary.html

所以我把我的gradle降级到1.9,它再次起作用。

[编辑我的答案如何降级Mac和Ubuntu中的Gradle]

对于Mac:我使用Homebrew,尝试Homebrew install specific version of formula?,我使用3.a历史时期,对我来说很有用。

对于Ubuntu:如果你已经安装了1.10,试试这个:

# Install both gradle 1.9 and 1.10 on you ubuntu
sudo apt-get install gradle-1.9

# Check it to make sure
sudo update-alternatives --list gradle

# Config to choose gradle 1.9
sudo update-alternatives --config gradle
# Just select /usr/lib/gradle/1.9/bin/gradle to choose gradle 1.9

答案 1 :(得分:0)

如果您尝试使用

将Gradle 1.9(或更低版本)项目更新为Gradle 1.10
task wrapper(type: Wrapper) {
    gradleVersion = '1.10'
}

和命令./gradlew wrapper您将得到与上述相同的错误。

解决方法是将Gradle 1.10安装到您的计算机上并升级您的项目不使用包装

gradle wrapper