我的问题是关于在路径中包含jar文件。它有2个部分。尽管设置了PATH和CLASSPATH,但无法执行jar文件
1)我试图执行位于/home/andy/software/weka/weka.jar
PATH变量点weka.jar jar文件到这个jar文件(即到/ home /安迪/软件/weka/weka.jar),CLASSPATH也是如此。
但是,当我尝试使用java -jar weka.jar运行jar时,出现“无法访问jarfile weka.jar”错误。
任何想法是怎么回事?我在Ubuntu Linux上。我环顾四周,好像我没有做任何明显错误的事情(因为PATH和CLASSPATH似乎设置正确)。
2)我想能够把我所有的jar文件放在一个目录下,并将该目录包含在我的路径中(而不是单独包含每个jar)。我怎样才能做到这一点?
在此先感谢。
编辑1 - >这是我的命令行
[email protected]:~$ export CLASSPATH=$CLASSPATH:/home/andy/research/software/weka/weka.jar
[email protected]:~$ echo $CLASSPATH
:/home/andy/research/software/weka/weka.jar
[email protected]:~$ java -jar weka.jar
Unable to access jarfile weka.jar
[email protected]:~$ java weka.jar
Exception in thread "main" java.lang.NoClassDefFoundError: weka/jar
Caused by: java.lang.ClassNotFoundException: weka.jar
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: weka.jar. Program will exit.
[email protected]:~$
EDIT 2 - >我改变PATH变量指向目录 '/家/安迪/科研/软件/秧鸡/',仍然可以得到“无法访问jarfile错误'
尝试使用'$ HOME'而不是'~'? –
其实我已经使用完整路径:/home/andy/software/weka/weka.jar。对于那个很抱歉。 – user721975
-jar表示类路径将被忽略 – micfra