使用java运行外部jar

时间:2012-12-06 15:35:03

标签: java runtime external

所以,我一直在做一些搜索,我可以找到一些关于如何运行外部应用程序的东西,但我不能让它们工作!我已经做了一段时间了,这真的很烦人。

我想要做的是在目录

中运行.jar文件

C:\Program Files\AVTECH\NPS\Files\bin\NPS.jar

我用代码尝试了很多不同的东西

Process p = Runtime.getRuntime().exec("dir goes here");

Process p = Runtime.getRuntime().exec("C:\\Program Files\\AVTECH\NPS\\Files\\bin\\NPS.jar");

如果我是正确的,它会使用命令提示符来执行此操作?或者至少是MS-DOS语言。几年前我做了一些这样的事情,但我不记得怎么会这样做...我以前从来没有在java中使用过这种东西......

有人可以帮忙吗?提前致谢。

3 个答案:

答案 0 :(得分:3)

Runtime.exec()就像你输入一个命令一样工作。

启动jar文件无效:您必须调用

  

java -jar / path / to / my / jar

查看Oracle有关如何执行jar文件的文档。

答案 1 :(得分:1)

实际命令应为java -jar C:\\Program Files\\AVTECH\NPS\\Files\\bin\\NPS.jar。我的意思是 - 如果jar文件确实是可执行的,这并不意味着它会运行,只是尝试调用它。您需要告诉Java如上所示运行它。

此外,MS-DOS不是一种语言 - 它代表Microsoft磁盘操作系统。如今,您将此作为Windows内置的命令行提示符(Shell)。

答案 2 :(得分:0)

您需要运行该命令作为对可执行文件和一组参数的调用。 Check this version of Runtime.exec(String[] cmdarray)。如果需要,还有一个Runtime.exec()版本,它带有一个基本目录,用于启动可执行文件。