Gradle 使用gretty插件更改配置?
我已经有一段时间没有对Gradle做任何事情了,所以我似乎忘记了配置解析是如何工作的 我试图使用gretty插件(而不是core,不推荐的jetty),但我似乎无法创建自定义配置 我将其归结为一个非常简短的脚本(使用Gradle 3.4): 我似乎不喜欢在Gradle 使用gretty插件更改配置?,gradle,gretty,Gradle,Gretty,我已经有一段时间没有对Gradle做任何事情了,所以我似乎忘记了配置解析是如何工作的 我试图使用gretty插件(而不是core,不推荐的jetty),但我似乎无法创建自定义配置 我将其归结为一个非常简短的脚本(使用Gradle 3.4): 我似乎不喜欢在fooTest配置上迭代 假设我需要知道该配置的依赖项(我从上面的代码中剥离了该部分) 我做错了什么 上面的脚本告诉我: org.gradle.api.InvalidUserDataException: Cannot change strate
fooTest
配置上迭代
假设我需要知道该配置的依赖项(我从上面的代码中剥离了该部分)
我做错了什么
上面的脚本告诉我:
org.gradle.api.InvalidUserDataException: Cannot change strategy of configuration ':fooTest' after it has been resolved.
这里的关键点是,我需要一个未解析的配置来循环。诚然,这个信息在最初的描述中被忽略了,因为我不知道它是关键信息。我们需要在依赖项中循环文件,并将它们复制/解压到特定位置 但是,我们无法使用已解析的配置来实现这一点。也就是说,我们可以将配置复制到一个未解析的配置中,然后循环:
configurations.fooTest.copy().each {
println it.toString()
}
这将成功打印出依赖项中涉及的文件(或者根据我的情况需要解压)。执行
println it.toString()
,您希望看到什么?我在依赖项配置中使用fooTest
(由于不管发生什么错误,我忽略了将其放入)。我不一定要打印依赖项,但我确实想解压缩一些zip依赖项,这就是为什么我需要迭代它们。我只是想尽量缩小问题的范围。
configurations.fooTest.copy().each {
println it.toString()
}