1

コマンドラインからVLCJテストjarを実行しようとしています。VLCJには2つの外部JARが必要です

  • jna.jar
  • platform.jar

これらのjarを、実行しようとしている実行可能jarと同じディレクトリに配置すると、正常に実行できます。ただし、それらを独自のディレクトリに配置して、次の手順を実行すると、次のようになります。

java -classpath "C:\Users\Constantin\workspace\Java Libraries\JNA" -jar executable.jar

JNAライブラリからクラスが見つかりません。私はJavaに非常に慣れていないので、検索しても考えられる答えはわかりません。だから私は誰かが答えるのを手伝ってくれることを望んでいました:

これをデバッグするにはどうすればよいですか?なぜ瓶が見つからないのですか?-classpathで何か問題がありますか?

前もって感謝します!

コンスタンティン

4

1 に答える 1

6

jar を明示的に、または単純な*ワイルドカードを使用して含めますが、実行可能な jarも含めます。mainコマンドラインで実行可能な jar のクラスを指定します(マニフェストに含まれます)。

java -classpath "C:\Users\Constantin\workspace\Java Libraries\JNA\*;executable.jar" com.foo.Bar

com.foo.Bar(メソッドを含むクラスmain、アプリのエントリ ポイントはどこにありますか。)

Java オプションのドキュメントを参照してください。一度jar指定すると、他のクラスパス情報はすべて破棄され、指定する jar にはすべてのユーザー クラスが含まれている必要があります。


関係ありませんが、Windows では常にスペースを含むパスを避けるようにしています。どこでもそうですが、特に Java 関連のものを扱う場合はそうです。それは機能するはずであり、通常は機能しますが、機能しない場合があります(いくつかのアプリサーバーのいくつかのバージョンを見ています)。

于 2012-02-25T00:32:38.413 に答える