我有一些来自.jar文件的类文件。我正在寻找一个使用Main方法的课程,所以我可以看到这个程序如何在没有网络行李的情况下工作。
>javap HaploGrepServer/HaploGrepMain
Compiled from "HaploGrepMain.java"
public class HaploGrepServer.HaploGrepMain extends java.lang.Object{
public HaploGrepServer.HaploGrepMain();
public static void main(java.lang.String[]) throws java.io.IOException;
}
大!我找到了
>java HaploGrepServer/HaploGrepMain
Exception in thread "main" java.lang.NoClassDefFoundError: org/restlet/Component
at java.lang.ClassLoader....
好的我可以添加
>java -cp org.restlet.jar HaploGrepServer/HaploGrepMain
Exception in thread "main" java.lang.NoClassDefFoundError: HaploGrepServer/HaploGrepMain
Caused by: java.lang.ClassNotFoundException: HaploGrepServer.HaploGrepMain
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)
Could not find the main class: HaploGrepServer/HaploGrepMain. Program will exit.
是什么给出的?
答案 0 :(得分:1)
当您在包中调用类时,请尝试使用点来分隔包组件,而不是斜杠:
java -cp .:org.restlet.jar HaploGrepServer.HaploGrepMain
答案 1 :(得分:1)
如果HaploGrepServer
在当前目录中,则需要在.
的类路径中包含当前目录:
java -cp .:org.restlet.jar HaploGrepServer.HaploGrepMain
答案 2 :(得分:1)
命令:
java HaploGrepServer.HaploGrepMain
使用默认的类路径“.
”。当您提供带有以下内容的类路径时:
java -cp restlet.jar HaploGrepServer.HaploGrepMain
现在只有 的类路径包含restlet jar。
因此,您需要类路径包含两个位置:
java -cp restlet.jar:. HaploGrepServer.HaploGrepMain
注意:如果您使用的是Windows平台,请使用分号代替冒号。