0

.jarファイルからいくつかのクラスファイルがあります。Mainメソッドを持つクラスを探しているので、このプログラムがWebの手荷物なしでどのように機能するかを確認できます。

>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....

OK、追加できます

>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.

何が得られますか?

4

3 に答える 3

1

パッケージ内でクラスを呼び出す場合は、スラッシュではなく、ドットを使用してパッケージコンポーネントを区切ってみてください。

java -cp .:org.restlet.jar HaploGrepServer.HaploGrepMain
于 2012-10-02T19:46:39.517 に答える
1

が現在のディレクトリにある場合HaploGrepServerは、現在のディレクトリをクラスパスに次のように含める必要があります.

java -cp .:org.restlet.jar HaploGrepServer.HaploGrepMain
于 2012-10-02T20:03:35.353 に答える
1

コマンド:

    java HaploGrepServer.HaploGrepMain

デフォルトのクラスパス' .'を使用します。クラスパスに次のものを指定する場合:

    java -cp restlet.jar HaploGrepServer.HaploGrepMain

クラスパスには、レストレットjarのみが含まれるようになりました。

したがって、両方の場所を含めるには、クラスパスが必要です。

   java -cp restlet.jar:. HaploGrepServer.HaploGrepMain

注:Windowsプラットフォームを使用している場合は、コロンの代わりにセミコロンを使用してください。

于 2012-10-02T20:05:24.143 に答える