有没有办法将 Java 源文件 (*.java
) 编译到不同的目录?
如果我的包文件结构是这样的:
Mathematics ->
Formulas ->
src ->
// source files containing mathematical formulas...
bin ->
// class files containing mathematical formulas...
Problems ->
src ->
// source files containing mathematical problems...
bin ->
// class files containing mathematical problems...
我想将源文件和类文件分开以保持文件夹井井有条,但我目前必须将所有类文件从 src
文件夹复制到 bin
文件夹每次编译。
有没有办法通过在 javac
命令中将类文件编译到另一个文件夹来简化这个过程?
最佳答案
是的,绝对 - 使用 -d
选项指定输出目录:
javac -d bin src/foo/bar/*.java
请注意,您指定的目录是输出结构的根;相关子目录将自动创建以对应您代码的包结构。
参见 javac documentation了解更多详情。
在这种情况下,您需要发出一个 javac
命令来编译公式,而另一个命令来编译问题 - 可能使用公式 bin
目录作为一部分编译问题时的类路径。
(请注意,您可能想考虑使用单一源代码结构但使用不同的包。您还应该考虑使用 IDE 来向您隐藏一些这种复杂性 - 最终手工完成所有这些工作会变得很烦人,即使虽然它实际上并不难。)
关于java - 将源文件编译到不同的目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18431857/