如何编译java源码?

时间:2010-09-20 04:11:12

标签: java

如何编译所有Java源代码,包括内部文件夹和子文件夹?

3 个答案:

答案 0 :(得分:5)

javac command允许您通过在命令行上列出其路径名,或通过提供包含源文件名列表的文件(命令行语法“@file”)来指定要编译的文件。在任何一种情况下,生成文件名列表的方式都是特定于操作系统的。例如,在Linux上,您通常会使用shell globbing或find实用程序来构建列表; e.g。

javac <options> */*.java

javac <options> `find . -name \*.java`

find . -name \*.java > list
javac <options> @list

或类似的东西。

但是,如果您要编译许多文件,那么使用诸如AntMaven之类的Java构建工具从长远来看会更好。在Ant情况下,使用模式(也称为antpaths)将要编译的文件(等)指定为FileSet以匹配文件。在Maven的情况下,构建工具通常根据项目的目录结构确定Java源文件名本身。

答案 1 :(得分:1)

在Java虚拟机(VM)可以运行Java程序之前,必须使用javac编译器将程序的Java源代码编译为字节代码。 Java字节码是与机器代码无关的平台版本;目标机器是Java VM而不是底层架构。要编译Java源代码文件Foo.java,您将执行以下操作:

% javac -g Foo.java

-g命令行选项是可选的,但我建议使用它,因为它可以使调试更容易。

但为什么不使用IDE来处理所有这些。例如。日食或netbeans。在那里,您可以管理源代码并构建它。

答案 2 :(得分:0)

如果您使用Java的Maven构建工具,它可以自动编译文件夹及其子文件夹中的所有Java源代码;否则,您几乎必须使用每个源文件的路径调用javac。有关基于Maven的Java项目示例,请参阅Java Project Template。如果您在链接下载模板,则只需使用makemvn package将所有Java源代码编译为可执行jar文件。请注意,这需要您安装Apache Maven2构建系统。