如何创建gradle buildscript配置?
以下内容给了我: “>无法在org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler_Decorated@5aaf4b6e上为参数[com.example:artefact:1.0.0]找到方法gradleCommon()。”:
buildscript {
configurations {
gradleCommon
}
repositories {
mavenCentral()
}
dependencies {
gradleCommon 'com.example:artefact:1.0.0'
classpath 'com.bmuschko:gradle-tomcat-plugin:2.0'
classpath 'mysql:mysql-connector-java:5.1.27'
}
}
答案 0 :(得分:3)
您需要使用记录的API来创建buildscript配置。您看到的行为是尝试调用不存在的方法和调用Groovy缺少的方法行为的组合。
根据我对Gradle论坛的回应:
buildscript块与ScriptHandler接口相关联。如果你看一下javadoc,你就会看到这些存储库'和'依赖'是唯一受支持的闭包。有一个getConfigurations(),但没有配置(Closure configureClosure),这就是configurations.create(...)可以工作的原因,但配置{}肯定不会。
Mark Vieira对Gradle论坛的回应:
这里实际发生的是当你在buildscript {}块中调用配置(Closure configureClosure)它实际上正在调用Project对象上的方法时,因为Groovy将继续搜索闭包范围,直到找到匹配