在linux中使用项目jar附加依赖jar

时间:2013-01-29 10:26:14

标签: java linux jar javafx-2 executable-jar

我正在尝试使用JavaFX在swing项目的linux上运行一个jar文件。我在linux上安装了JRE7。

我的项目罐使用两个罐子: jfxrt.jar lucene.jar 。我已将jar复制到 / home / projectdir / lib / ,并通过以下命令设置类路径

 export CLASS PATH=/home/projectdir/lib/jarfilename.jar

但是在使用以下命令运行我的项目jar时仍然出现错误:

 java -jar projectjar.jar

2 个答案:

答案 0 :(得分:4)

你在环境变量中有一个拼写错误:它应该是CLASSPATH(中间没有空格)。 你还需要放两个罐子:

export CLASSPATH=/home/projectdir/lib/jfxrt.jar:/home/projectdir/lib/lucene.jar:projectjar.jar

或更好地使用相对路径:

export CLASSPATH=lib/jfxrt.jar:lib/lucene.jar:projectjar.jar

但是你必须使用主类名,而不是-jar,正如另一个答案所指出的那样。

答案 1 :(得分:1)

AFAIK,使用-jar选项时会忽略类路径设置。使用-cp选项并在命令行上指定主类。

来自文档:

http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html#jar

  

-jar

     

执行封装在JAR文件中的程序。第一个参数是JAR文件的名称而不是启动类名称。为了   要使此选项生效,JAR文件的清单必须包含   Main-Class形式的行:classname。这里,classname标识了   类具有public static void main(String [] args)方法   作为您的应用程序的起点。请参阅Jar工具   参考页面和Java Tutorial的Jar跟踪信息   关于使用Jar文件和Jar文件清单。当你使用   此选项,JAR文件是所有用户类的源,以及其他   用户类路径设置将被忽略。