在后台运行 JavaExec 任务,然后在构建完成时终止

2023-11-24

我试图找出如何启动一个 JavaExec 任务来生成 Jetty 服务器而不阻塞后续任务。另外,我需要在构建完成后终止该服务器。知道我该怎么做吗?


我知道该线程是 2011 年的,但我仍然偶然发现了这个问题。这是使用 Gradle 2.14 的解决方案:

import java.util.concurrent.Callable
import java.util.concurrent.ExecutorService
import java.util.concurrent.Executors    

class RunAsyncTask extends DefaultTask {
    String taskToExecute = '<YourTask>'
    @TaskAction
    def startAsync() {
        ExecutorService es = Executors.newSingleThreadExecutor()
        es.submit({taskToExecute.execute()} as Callable)
    }
}


task runRegistry(type: RunAsyncTask, dependsOn: build){
    taskToExecute = '<NameOfYourTaskHere>'
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在后台运行 JavaExec 任务,然后在构建完成时终止 的相关文章

随机推荐