[英]Run java application from command line with external jar files
我有一个外部jar文件(有包结构),它包含主类,我可以从命令行运行应用程序,如下所示:
java -jar example.jar
但是我在这个jar文件之外还有另一个test.class
文件,这个jar文件中的一些类将调用test.class
的方法。 如何在命令行中指定jar文件使用的test.class
文件? 试过很多方法,总是表现出来:
NoClassDefFoundError for test.class
注意:test.class文件也使用example.jar文件中的类文件,有自己的包结构。
我知道我可以把它们放在一个jar文件中,不幸的是我需要单独的test.class文件。
如果类在bin目录中:
java -cp xxx.jar;bin pck1.pck2.MainClass
如果该类位于当前目录中:
java -cp xxx.jar;. pck1.pck2.MainClass
等等...
手册中的更多信息 ,请至少阅读一次... ;-)
在Linux系统中
编译和运行Java程序以及外部JAR。
javac -cp </path/jar1>:<path/jar2>:<path/jar3> MainClass.java
如果编译器抛出弃用警告。 您可以使用-Xlint:deprecation参数重新编译。
javac -Xlint:deprecation -cp </path/jar1>:<path/jar2>:<path/jar3> MainClass.java
最后,运行Java程序:
java -cp </path/jar1>:<path/jar2>:<path/jar3>:. MainClass
如果要在后台运行Java Process。 你可以使用nohup 。
nohup java -cp </path/jar1>:<path/jar2>:<path/jar3>:. MainClass &
您可以使用以下命令来运行java主类或java jar文件:
java -Djava.ext.dirs=E:\lib E:\Executable\MyMainClass
java -Djava.ext.dirs=E:\lib E:\Executable\purging.jar
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.