2016-12-28 78 views
0

我有我正在通过jenkins运行它的java项目。我只想运行5-10分钟的工作。无论如何,我们可以设置jenkins构建的持续时间。由于我的java进程将继续运行,没有任何结束。我只是想在特定的时间内结束这一切。有什么办法可以做到吗?在此先感谢在詹金斯设置生成时间

回答

0

您可以让詹金斯运行睡眠一段时间的脚本,找到Java进程的PID并杀死它。

或者您可以拥有应用程序知道的JVM参数,并在时间过后关闭。

+0

我在jenkins中创建了另一个工作,它使用jar名称来杀死当前正在运行的java进程。但事情是,运行我的java进程的詹金斯工作在我通过使用其他工作而杀死后失败了。 – krish

0

这听起来像你试图滥用詹金斯一些奇怪的事情。我会在一段时间后尝试关闭应用程序本身。 Herehere您可以找到关于如何在一段时间后结束Java应用程序的信息 - 它基本上使用ExecutorService或TimerTask,例如,

import java.util.Date; 
import java.util.Timer; 
import java.util.TimerTask; 

public class ExitOn { 
    Timer timer = new Timer(); 

    TimerTask exitApp = new TimerTask() { 
    @Override 
    public void run() { 
     System.exit(0); 
    } 
    }; 

    public ExitOn() { 
    timer.schedule(exitApp, new Date(System.currentTimeMillis()+5*1000));//Exits after 5sec of starting the app 
    while(true) 
     System.out.println("hello"); 
    } 

    public static void main(String[] args) { 
    new ExitOn(); 
    } 
}