.jar ライブラリを使用して Java プログラムをコンパイルする方法 質問する

.jar ライブラリを使用して Java プログラムをコンパイルする方法 質問する

拡張しようとしているクラスの外部 .jar ファイルを javac に認識させることができません。同じディレクトリに 2 つのファイル (TestConsole.java と acm.jar) があります。次のコマンドを使用して、同じディレクトリからコンパイルしています。

javac -classpath .:acm.jar TestConsole.java

しかし、javac は acm.jar を無視しているようです。次のエラーが発生します:

TestConsole.java:1: package acm does not exist
import acm.program;
          ^

もちろん、acm.program は acm.jar 内のパッケージです。acm.jar 内のすべてのクラスはすでにコンパイルされています。私はそれらをコンパイルするのではなく、クラス内で使用したいだけです。

何が間違っているのでしょうか?

私はこれを Mac 上で実行していますが、acm.jar のディレクトリ構造は有効であるように見えます。これには、拡張する唯一のクラスacm/programである を含むディレクトリが含まれています。ConsoleProgram.classTestConsole

javac -classpath ".:acm.jar" TestConsole.javaも動作しません。

ベストアンサー1

javac -cp <jar you want to include>;<jar you want to include> <source.java> 

<jar you want to include>同じディレクトリにある場合は、jarの名前だけで十分です。そうでない場合は、フルパスまたは相対パスを指定します。

複数の瓶がある場合は、,

;に置き換える:unix

可能であれば、Eclipse などの IDE を使用してください。私は以前、同様のことに多くの時間を費やしていましたが、業界では、このようなやり方で行うことはほとんどありません。

おすすめ記事