我试图了解Gradle Wrapper的工作原理.在许多源代码库中,我看到以下结构:
projectRoot/
src/
build.gradle
gradle.properties
settings.gradle
gradlew
gradlew.bat
gradle/
wrapper/
gradle-wrapper.jar
gradle-wrapper.properties
Run Code Online (Sandbox Code Playgroud)
我的问题:
gradlew/ gradlew.bat?您是否应该在项目首次创建时仅生成一次,每次提交/推送更改时是否生成它们?它们是如何产生的?gradle/wrapper/*文件(gradle-wrapper.jar和gradle-wrapper.properties)?*.gradle在项目gradle目录中看到其他文件.这些额外的Gradle文件是什么?它们代表什么/做什么?自定义插件?settings.gradle与内部应该定义的属性有什么不同gradle.properties?我通过删除本地目录等清洗整个项目~/.gradle,~/.m2 ~./android并~/workspace/project/.gradle和艇员选拔File -> Invalidate Caches / Restart...Android Studio中.现在执行命令./gradlew会导致以下输出:
usr$ ./gradlew tasks
Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain
Run Code Online (Sandbox Code Playgroud)
不用说,我删了太多,问题是如何再次修复?你有任何想法如何解决这个问题?
我的Android应用程序的build.gradle变得非常冗长.看看这个名为gradle-lint-plugin的插件并正确配置它.在其文档中说
运行
./gradlew fixGradleLint以自动修复构建脚本
但是在跑步的时候,我得到了Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain.
这与使用自己的Gradle插件的Android Studio有什么关系吗?我没有在系统范围内安装Gradle.
编辑:我不希望在系统范围内安装Gradle - 有没有办法只在Android Studio中执行此操作?