在我的Gradle插件中,我使用了其他的
在Gradle插件中,我声明了一个容器来保存
在我的
在尝试构建脚本时,我收到了一个类型转换异常,说我不能将闭包强制转换为对象。我尝试在build.gradle中使用其他括号声明arrayWithObjects等方法,但是没有任何实际效果。我也不知道该去哪里寻找答案。也许你们中的一些人之前遇到过这个问题? 提前感谢您。
编辑: 要重现此问题: 插件:
在主要的
build.gradle
脚本,它看起来像这样:
build.gradle:
sciptInstance {
name {
arrayWithObjects = [
{
var1 = "val1"
var2 = "val2"
{
]
}
}
在Gradle插件中,我声明了一个容器来保存
ScriptClass
类的实例。这个类有一个字段arrayWithObjects
。 arrayWithObjects
元素的类声明如下:MyClass {
def var1
deg var2
}
在我的
SciptClass
中:ScriptClass {
// other fields
MyClass[] arrayWithObjects
// constructor and so on..
}
在尝试构建脚本时,我收到了一个类型转换异常,说我不能将闭包强制转换为对象。我尝试在build.gradle中使用其他括号声明arrayWithObjects等方法,但是没有任何实际效果。我也不知道该去哪里寻找答案。也许你们中的一些人之前遇到过这个问题? 提前感谢您。
编辑: 要重现此问题: 插件:
apply plugin: MyPlugin
apply from: 'example.gradle'
class MyPlugin implements Plugin<Project> {
void apply(Project project) {
def examples = project.container(ScriptClass)
project.extensions.examples = examples
}
}
class ScriptClass {
String name
MyClass[] arrayWithObjects
ScriptClass(String name) {
this.name = name
}
}
class MyClass {
def var1
def var2
}
example.gradle:
examples {
example {
arrayWithObjects = [
{
var1 = "val1"
var2 = "val2"
}
]
}
}
在主要的
build.gradle
文件中应用此插件并调用任何任务。
build.gradle
文件展示了问题,我不知道如何重现你的问题以便解决它。 - Opal