web-dev-qa-db-ja.com

ビルドJavaパッケージ(すべてのファイルへのjavac)

ディレクトリ内のすべてのファイルを* .classファイルにコンパイルするにはどうすればよいですか?

13
Vytas

UNIXで「find」を使用するさらに別の方法をここで説明します。

http://stas-blogspot.blogspot.com/2010/01/compile-recursively-with-javac.html

次の2つのコマンドは、ディレクトリ./srcとそのサブディレクトリに含まれるすべての.Javaファイルをコンパイルします。

find ./src -name *.Java > sources_list.txt
javac -classpath "${CLASSPATH}" @sources_list.txt

まず、findsources_list.txtを生成します。これは、Javaソースファイルへのパスを含むファイルです。次に、javacは、を使用してこれらすべてのソースをコンパイルします。構文@sources_list.txt

9
Kipton Barros

これは、プロジェクト全体をビルドするために使用するコードフラグメントです。通常、ソースファイルは深くネストされた階層にあり、クラスパスに入れる必要のある.jarファイルが多数あります(UNIXユーティリティが必要です)。

CLASSPATH=
for x in $(find | grep jar$); do CLASSPATH="$CLASSPATH:$x"; done
SRC=$(find | grep Java$)
javac -cp "$CLASSPATH" $SRC
3
Kilian Foth