私はJavaを使い慣れていません。より良いタイトルをお勧めします。eclipse IDEを使ってAPIの例を実行するにはどうすればいいですか?
私は、MS Outlookの.pst
ファイルの解析に関連するさまざまなことを行う多くの実行可能モジュールを持つJava APIを持っています。あなたがチェックすることができ
Exception in thread "main" java.lang.NoClassDefFoundError: /opt/Java/libs/JPST/examples/GetInboxMessages/bin/Example
Caused by: java.lang.ClassNotFoundException: .opt.Java.libs.JPST.examples.GetInboxMessages.bin.Example
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: /opt/Java/libs/JPST/examples/GetInboxMessages/bin/Example. Program will exit.
これまでのところ...
- そして、私の問題は、私はAPI(java -classpath /opt/Java/libs/JPST/lib/jpst.jar /opt/Java/libs/JPST/examples/GetInboxMessages/bin/Example
)の1つのモジュールの.class
ファイルを実行するためにexecute
コマンドを実行したときに、私はこの例外を取得していますということですmy previous questionここで私はcompile
とexecute
コマンドを正しく実行していると判断しました。しかし、私はまだ上記の `例外を取得しています。
私は、EclipseまたはNetbeans IDEを入手する必要があると言うAPIの開発者に尋ねました。彼は、APIの フォルダ構造内の
examples
フォルダが全体のEclipse ワークスペースがあることを述べました。
もが
すべて 例をコンパイルして実行することが容易であると述べました。
そして今...
だから、私は、JavaのセットアップのEclipse Heliosのを持っています。誰でもコンパイルして、すべてのサンプルを実行するのは簡単です(私はサンプルフォルダ内のモジュールはIDEだと思います)。以前はPHP用のEclipseで作業しましたが、Java向けには使用しませんでした。 APIの
フォルダ構造
Iは、(多くのモジュールフォルダがdirectory
例の内部に存在している)これらのモジュールのうちの一つの.class
ファイルを実行する必要があります。このようなモジュールは、APIのexamplesフォルダ内にたくさんあります。これらのモジュールの各フォルダには、bin
フォルダ(.class
ファイルを含む)とsrc
フォルダ(.java
ファイルを含む)が含まれています。そのようなファイルを実行する必要があります。.class
.class
ファイルで参照される必要がある.jar
ファイルを含むlib
ディレクトリがあります。 lib
ディレクトリは、examples
ディレクトリと同じレベルにあります。
ソリューション
私はジョナサンによって与えられた解決策は、(なし-使用-elipse場合のみ検証)動作することを確認しました。 classpath
は、コンパイルコマンドと実行コマンドの両方にすべてのクラスの場所を含める必要があることを明確にするために、
java -classpath /path/to/Parent.jar/file/Parent.jar:/path/to/Example.class/file Example
を実行し、セパレーターを注意し
コンパイル
javac -classpath /path/to/Parent.jar/file/Parent.jar:/path/to/Example.java/file/ Example.java
- - Linux用:
する必要があります:あなたは、依存関係Parent.jar
でExample.java
ファイルをコンパイルして実行する必要があるのであれば、これを行いますウィンドウの場合は;
です。
おかげで、
Sandeepan
偉大な答え!今のところEclipseの設定部分は無視されます。 Eclipseを使用せずに実行するためのヒントは完璧に正常に働いた。私はクラスパスを適切に設定していませんでした。私は 'jpst.jar'だけが' classpath'に追加されることを前提としていました。なぜならそれは依存関係だったからですが、 'Example.class'ファイルのパスもクラスパスに追加する必要があると指摘したように。優れた質の答え。良い仕事を続けてください! –