我想用番石榴运行我的程序.如果我用我的程序编译
编辑:java - > javac用于编译调用
javac -cp myPackages/guava-13.0.jar MyScanner.java
Run Code Online (Sandbox Code Playgroud)
没有问题.
如果我试着跑
java MyScanner -cp myPackages/guava-13.0.jar
Run Code Online (Sandbox Code Playgroud)
我在控制台上获得此输出:
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Optional
at MyScanner.main(MyScanner.java:37)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Optional
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
... 1 more
Run Code Online (Sandbox Code Playgroud)
你能告诉我如何使用外部jar执行程序吗?
我想你想要的是:
java -cp myPackages/guava-13.0.jar:. MyScanner
Run Code Online (Sandbox Code Playgroud)
注意我在类路径中设置了两个值,'.' (当前目录)和番石榴的路径.您的问题是您在指定主类后指定了classpath选项MyScanner.在主类之后指定的选项是程序的参数,而不是java本身.
| 归档时间: |
|
| 查看次数: |
4076 次 |
| 最近记录: |