1. ホーム
  2. java

Java: コマンドラインから jar ファイルをインポートする方法

2023-11-27 20:58:41

質問

Javaでコマンドライン(Windows)からクラス(mainメソッド)を呼び出そうとしています。

このクラスは他のクラス(他のjar)をインポートしています。

メインプログラムがインポートしているクラスから、いつも "class not found exception" が発生します。

以下は私が試したことです。

  • CLASSPATH 環境変数に、参照する lib が存在するパスを追加する (動作しません)

  • 私は、"を呼び出すときに、これらすべての異なるパラメータで試してみました。 java -jar myjar.jar コマンドラインから " を呼び出す場合、次のようになります。 -classpath lib/ "、" -classpath ./lib/ "、" -classpath lib "、" -cp lib/* "、" -cp lib/\* "、" -classpath lib/referenced-class.jar "、" -classpath ./lib/referenced-class.jar "(libは参照されたjarが存在する場所です。)

  • メインクラスが存在するjarの中に、参照されるjarを全てパッケージングしてみたのですが...。

  • また、マニフェストファイル内でクラスを指定するために、以下のようにしました。 Class-path referenced-jar.jar で、さらに Class-path lib/referenced-jar.jar

どのように解決するのですか?

を付けずに実行すればいいのです。 -jar コマンドライン引数なしで実行することもできます。

java -classpath .;myjar.jar;lib/referenced-class.jar my.package.MainClass

もし、あなたがLinuxを使用しているのであれば、クラスパスに ";" の代わりに ":" を使用する必要があります。