为了账号安全,请及时绑定邮箱和手机立即绑定

Java:如何从命令行导入jar文件

Java:如何从命令行导入jar文件

慕妹3242003 2019-10-25 15:01:22
我正在尝试使用Java从命令行(Windows)调用类(主方法)。该类导入其他类(其他jar)。我总是从我的主程序导入的类中获得“找不到类异常”。这是我尝试过的:添加一个CLASSPATH env。var与所引用的lib所在的路径(不起作用)java -jar myjar.jar从命令行调用“ ” 时,我尝试了所有这些不同的参数:“ -classpath lib/”,“ -classpath ./lib/”,“ -classpath lib”,“ -cp lib/*”,“ -cp lib/\*”,“ -classpath lib/referenced-class.jar”,“ -classpath ./lib/referenced-class.jar”(lib是引用的jar所在的位置)我尝试将所有引用的jar包装在我的主类所在的jar中...拥有了这些,我也试图与指定清单文件中的类: Class-path referenced-jar.jar我也尝试过Class-path lib/referenced-jar.jar
查看完整描述

3 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

-jar如果您碰巧知道要运行的主类的名称,则可以在不使用命令行参数的情况下运行它:


java -classpath .;myjar.jar;lib/referenced-class.jar my.package.MainClass

如果您使用的是Linux,则应使用“:”而不是“;”。在类路径中。


查看完整回答
反对 回复 2019-10-25
?
MMMHUHU

TA贡献1834条经验 获得超8个赞

如果您使用运行jar文件java -jar,则忽略该-classpath参数。您需要在jar的清单文件中设置类路径,如下所示:


Class-Path: jar1-name jar2-name directory-name/jar3-name


请参阅Java教程:将类添加到JAR文件的Classpath中。


编辑:我看到您已经尝试在清单中设置类路径,但是确定使用正确的语法吗?如果您像显示的那样:在“ Class-Path” 之后跳过“ ”,则将不起作用。


查看完整回答
反对 回复 2019-10-25
?
富国沪深

TA贡献1790条经验 获得超9个赞

尝试


java -cp "your_jar.jar:lib/referenced_jar.jar" com.your.main.Main

如果您使用的是Windows,则应使用;而不是:


查看完整回答
反对 回复 2019-10-25
  • 3 回答
  • 0 关注
  • 791 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信