如何将目录中的所有文件编译为*.class文件?
这个看起来非常明显,所以我可能遗漏了一些东西。
javac *.java
(附带适当的库引用等)
或者说:
javac -d bin *.java
以便javac为输出创建正确的目录结构。
你是否在寻找更复杂的东西?如果是,请提供更多细节(以及您所在的平台)。
javac super/package/dir/*.java
进行编译(也可以添加 -d
、-cp
和/或 -sourcepath
参数)。 - Paŭlo Ebermannjavac:文件未找到:*.java
”的错误。 - Tomáš Zato.java
文件。如果没有源文件,编译源代码就很困难... - Jon Skeetjavac
能够递归地找到它们。 - Tomáš Zato还有一种在UNIX上使用“find”的方法,在此处进行了描述:
http://stas-blogspot.blogspot.com/2010/01/compile-recursively-with-javac.html
以下两个命令将编译目录./src
及其子目录中包含的所有.java文件:
find ./src -name *.java > sources_list.txt
javac -classpath "${CLASSPATH}" @sources_list.txt
首先,find
命令会生成一个名为sources_list.txt
的文件,其中包含Java源文件的路径。接下来,javac
使用语法@sources_list.txt
编译所有这些源文件。
find ./src -name *.java | javac -classpath "${CLASSPATH}" @/dev/stdin
。 - DunesCLASSPATH=
for x in $(find | grep jar$); do CLASSPATH="$CLASSPATH:$x"; done
SRC=$(find | grep java$)
javac -cp "$CLASSPATH" $SRC