一尘不染

带有外部.jar的Java命令行

java

我使用.jar开发一个项目以重用代码。

因此,我在名为TOOLS.jar的.jar上进行了开发,并在文件HelloWorld.java中开发了一个简单的应用程序,该应用程序从TOOLS.jar引用了我的软件包TOOLS。

我使用以下命令行进行编译:

javac -g -d C:\MyApp -cp TOOLS.jar HelloWorld.java

成功,当我想执行我的应用程序时,我使用以下命令(位于C:\ MyApp文件夹中):

java -cp <path>\TOOLS.jar;. HelloWorld

成功了,但是我的问题是:

当我有多个外部.jar文件时,如何执行我的应用程序?

我是否必须在命令中使用-cp选项添加每个选项?

有没有一种方法可以只生成一个二进制文件并执行它(如带有C程序的.exe)?


阅读 217

收藏
2020-09-08

共1个答案

一尘不染

将每个jar文件参数与cp连接起来:

; on Windows
: on Linux or Mac

例如

java -cp <path>\TOOLS.jar;.;<path>\jar2.jar;<path>\jar3.jar HelloWorld

在较新的JVM(我认为是6+)上,您还可以使用*将所有JAR附加到目录中,例如

java -cp .;<path>\*; HelloWorld

要更进一步并创建一个打包的可执行文件,请参阅此问题

2020-09-08