从java代码运行jar文件

问题描述:

我想从java代码运行jar文件,但它不起作用。 我尝试过运行时和th ProcessBuilder,但未能启动。 jar是Jetty Web服务器的start.jar文件从java代码运行jar文件

请帮忙吗?

我不知道你的用例,但我认为你正在尝试启动一个Jetty服务器,并且在我的愚见中,这种情况的最佳选择是使用Jetty作为依赖项。请将该jar文件放入类路径中,并在代码中添加这些行。

import org.eclipse.jetty.server.Server; 

public class App { 
    public static void main(String[] args) throws Exception { 
     Server server = new Server(8080); 
     server.start(); 
     server.join(); 
    } 
} 

和运行时,

String directory = "[jetty directory]"; 
String format = "/usr/bin/java -Djetty.logging.dir=%s/logs -Djetty.home=%s -Djetty.base=%s -Djava.io.tmpdir=/tmp -jar %s/start.jar jetty.state=%s/jetty.state jetty-logging.xml jetty-started.xml"; 

Process process = Runtime.getRuntime() 
        .exec(String.format(format, directory, directory, directory, directory, directory)); 

process.waitFor(); 
+0

我不是想的嵌入式的方式,我有下载Jetty服务器并运行它,你必须在命令行的磁带Java的罐子start.jar。 我试图从一个java代码 –

+0

做请再次检查答案。 –

+0

现在感谢您的工作^^ –