有人可以告诉我gradlew是否有任何优势吗?
我对gradle-wrapper.properties
文件也有疑问。
最初我跑
时C:\project_basedir>gradle wrapper
我在gradle-wrapper.properties
文件中找到了以下内容。
#Thu Jun 12 17:06:10 IST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-1.12-bin.zip
要停止下载zip文件,我已按照 61.1一章中的步骤进行操作。 gradle documentation的配置,并将gradle-1.12-bin.zip
文件从我的本地gradle安装添加到<Project_Base>\gradle\wrapper
目录。并修改了属性文件,如下所示:
#Thu Jun 12 17:06:10 IST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=gradle-1.12.zip
它节省了下载时间。
我的Gradle安装结构如下:
C:\Users\sanjeev\Softwares\Gradle\gradle-1.12\bin
我已将系统属性GRADLE_USER_HOME
设置为我的本地安装目录,即C:\Users\sanjeev\Softwares\Gradle\gradle-1.12
。但是distributionBase
&amp; distributionPath
选项没有选择值。
我甚至尝试将值修改为:
distributionBase=file://C://Users//sanjeev//Softwares//Gradle//gradle-1.12
它不起作用。
Exception in thread "main" java.lang.RuntimeException: Base: file:/C:/Users/sanjeev/Softwares/Gradle/gradle-1.12 is unknown
有人可以建议我在这里缺少什么吗?
或简而言之,如何正确定义distributionBase
,distributionPath
,zipStoreBase
和zipStorePath
?
答案 0 :(得分:12)
gradlew over gradle的优势在于:
我不确定更改属性文件中的分发URL的重点。包装器的重点是下载gradle。如果你在本地获得它,你也可以安装并使用gradle。包装器只会下载一次分发并为每个用户存储它(因此使用GRADLE_USER_HOME)。
GRADLE_USER_HOME是一个环境属性,而不是系统属性。如果要使用系统属性更改gradle用户主页,则需要设置'gradle.user.home'。
答案 1 :(得分:2)
获得正确的gradle-wrapper.properties的最佳方法是使用gradle wrapper
运行包装器任务。但这需要本地gradle安装。手动编辑该文件的内容时,您需要小心转义。试试这个distributionUrl
:
distributionUrl=file\://gradle/wrapper/gradle-1.12-bin.zip
还有一条评论:如果将gradle安装放在本地bin存储库中(例如在nexus或artifactory存储库中),则可能更容易维护,并让gradlew从那里下载引用的gradle bin。好处是,您只需要更新distributionURL。
答案 2 :(得分:0)
如果您尝试将包装器distributeUrl更改为指向本地Gradle.zip文件。
(不含空格)将其更改为文件\:/// C:\ Users \ sanjeev \ Softwares \ Gradle \ gradle-1.12.zip (文件名 gradle-1.12.zip 此处必须与PC中的内容相同。)
答案 3 :(得分:0)
如下所示删除空格,否则将不起作用:
distributionUrl= file\:///c:/Users\sanjeev\Softwares\Gradle\gradle-1.12.zip