繁体   English   中英

使用cmd中的Eclipse Java项目运行外部jar

[英]Running external jars using Eclipse Java project in cmd

我已经用eclipse编写了一个项目,我想使用cmd运行其“ .class”文件。
我抬起头,发现必须使用以下格式:

java -cp。 package.mainclass

我尝试了一下,这有点工作,问题是我的项目中有一个lib目录,其中包含我使用的jar文件,当按上述方式运行时,我收到无法找到类的错误(不是主类) 。
我该如何运行?
注意:项目目录中有一个xml .classpath文件,其中包含所用jar的名称。

您需要将.classpath 手动列出的所有jar添加到Java命令中。 查找jars列表的另一个地方是Project->Properties->BuildPath

您可以使用自定义脚本来生成类路径,例如(* NIX):

java -cp $(echo lib/*.jar | tr ' ' ':') package.MainClass

编辑:好的,因此要直接使用Eclipse .classpath文件条目在* NIX中生成类路径,可以使用以下命令:

java -cp $(echo $(grep ".jar" .classpath | awk -F \" '{print $4}') | tr ' ' ':') package.MainClass

这样,您不必手动生成类路径。 对于Windows,您将需要使用bash脚本来执行此操作,但我还没有解决!

将您的应用程序使用的库添加到类路径。

java -cp。; lib / my-lib1.jar; lib / my-lib2.jar my.pkg.MainClass

如果还将类打包到一个JAR文件中(建议使用),则可以执行以下操作(假设名称为main.jar且位于应用程序的根目录中):

java -cp main.jar; lib / my-lib1.jar; lib / my-lib2.jar my.pkg.MainClass

但是,如果您已经为您的应用程序提供了JAR文件,则将有一个清单文件 ,您可以在其中将类路径添加到:

类路径:lib / my-lib1.jar; lib / my-lib2.jar

在这种情况下,您只需以

java -cp main.jar my.pkg.MainClass

并且-第一步-由于您已经具有带有清单文件的主JAR,因此可以通过将其添加到清单文件中来使其成为可运行的JAR:

主类:my.pkg.MainClass

现在,您可以通过以下方式启动应用程序:

java -jar main.jar

现在也可以双击。

使用这个,我希望这对您有用:

java -cp <your jar file location> package.mainclass 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM