我是Gradle和Java开发的新手,并且在使用需要旧版本Gradle的Gradle项目时遇到了困难。
基本上,问题在于我运行的每个gradle
命令都会出现相同的错误:
FAILURE: Build failed with an exception.
* Where:
Build file '/var/code/doron/reverb/libpulse-android/build.gradle' line: 10
* What went wrong:
A problem occurred evaluating project ':libpulse-android'.
> Failed to apply plugin [id 'android-library']
> Gradle version 1.10 is required. Current version is 4.10.2. If using the gradle wrapper, try editing the distributionUrl in /var/code/doron/reverb/gradle/wrapper/gradle-wrapper.properties to gradle-1.10-all.zip
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/4.10.2/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 0s
据我了解,处理此类项目的推荐方法是安装并使用gradle包装器-使用./gradlew
命令而不是系统的gradle
。我已经搜索了互联网并访问了以下网页:https://docs.gradle.org/current/userguide/gradle_wrapper.html#sec:adding_wrapper,基本上说我应该运行:
gradle wrapper --gradle-version 1.10
但这最终会导致与上述相同的错误!
在寻找答案时,我遇到了以下问题:Getting error "Gradle version 1.10 is required. Current version is 1.12." when executing "gradle wrapper"?未能解决我的问题。似乎该问题的答案仅试图解释问题发生的原因,而不是解决问题的方法。
您知道为什么问题是荒谬的递归吗?我无法在包装器中安装所需版本的Gradle,因为构建失败并且构建失败是因为我没有使用单独的版本的gradle
中,我没有使用无法安装的包装器 。
答案 0 :(得分:2)
如果您的项目中还没有包装器:您可以创建一个新的临时Gradle项目,在该项目中配置包装器以匹配所需的gradle版本,然后将与包装器相关的文件复制到您的最初项目。如果您已经有了包装器,则只需更改./gradle/wrapper/gradle.properties
中的发布网址即可配置它:
详细信息
1)创建一个新的空项目
mkdir tmp-project
cd tmp-project
gradle init
2)更改包装器版本
gradle wrapper --gradle-version 1.10
3)检查版本(这将下载发行版)
$ ./gradlew --version
Downloading https://services.gradle.org/distributions/gradle-1.10-bin.zip
......................................
------------------------------------------------------------
Gradle 1.10
------------------------------------------------------------
4)将包装器相关的资源复制到您的项目中:
答案 1 :(得分:0)
打开gradle-wrapper.properties
文件中的GradleScripts
,如下所示更改 distributionUrl
#Thu Apr 12 11:14:54 IST 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
别忘了清理和重建项目