我正在尝试创建一个Zip任务,用于创建一个分发包,其中包含项目jar文件和war文件(以及可能由“assemble”任务产生的其他构建工件)。
任务
但是如果我尝试执行它,Gradle会报以下错误消息:
我已经查看了assemble任务的规范,其中明确写道assemble任务自动依赖于项目中所有归档任务,显然包括我的dist任务。似乎没有绕过它的方法。
在gradle中,正确的做法是什么?如何创建一个zip任务来依赖assemble任务?我可以让dist任务显式地依赖jar和war任务,但我认为这有点违反封装原则。
我正在使用gradle-1.0-milestone-3。
提前感谢!
因此,我尝试编写这个简单的脚本。
task dist(dependsOn: 'assemble', type: Zip){
into('lib'){
from 'build/libs' //contains jar and war files
}
... //other stuff
}
任务
dist
依赖于assemble
,因为它方便地包括创建jar和war文件的任务。但是如果我尝试执行它,Gradle会报以下错误消息:
Circular dependency between tasks. Cycle includes [task ':assemble', task ':dist'].
我已经查看了assemble任务的规范,其中明确写道assemble任务自动依赖于项目中所有归档任务,显然包括我的dist任务。似乎没有绕过它的方法。
在gradle中,正确的做法是什么?如何创建一个zip任务来依赖assemble任务?我可以让dist任务显式地依赖jar和war任务,但我认为这有点违反封装原则。
我正在使用gradle-1.0-milestone-3。
提前感谢!
jar
和war
任务的输出。你的解决方案现在应该可以解决问题,但如果我稍后添加一些辅助的jar任务,似乎它们可能会出现在我的zip文件中。 - rodion