我有一个可用的Maven构建版本(如下所示),它准备了几个可执行文件作为两个独立的进程启动。使用Gradle的多个启动脚本
虽然这工作正常,那么如何使用Gradle做到这一点?我发现Gradle提供了一个名为application
的插件,但我很难找到一个很好的例子,告诉它在输入时:gradle stage
,它应该创建2个可执行文件。
现在,当我打电话stage
只在我gradle这个脚本中定义的 “根” mainclass提供了一个可执行文件:
apply plugin: 'java'
apply plugin: 'application'
mainClassName = 'SpringLauncher'
applicationName = 'foo'
compileJava.options.encoding = 'UTF-8'
targetCompatibility = '1.7'
sourceCompatibility = '1.7'
task stage(dependsOn: ['clean', 'installApp', 'hello'])
而且Maven构建:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.1.1</version>
<configuration>
<assembleDirectory>target</assembleDirectory>
<programs>
<program>
<mainClass>foo.bar.scheduler.SchedulerMain</mainClass>
<name>scheduler</name>
</program>
<program>
<mainClass>SpringLauncher</mainClass>
<name>web</name>
</program>
</programs>
</configuration>
<executions>
<execution>
<phase>package</phase><goals><goal>assemble</goal></goals>
</execution>
</executions>
</plugin>
</plugins>
将'duplicatesStrategy ='exclude''添加到复制任务将消除'bin /'目录内的重复脚本。 – Whymarrh