所以,我一直在做一些搜索,我可以找到一些关于如何运行外部应用程序的东西,但我不能让它们工作!我已经做了一段时间了,这真的很烦人。
我想要做的是在目录
中运行.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中使用过这种东西......
有人可以帮忙吗?提前致谢。答案 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()
版本,它带有一个基本目录,用于启动可执行文件。