Jon*_*Lam 20 java directory-structure
有没有办法将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...
Run Code Online (Sandbox Code Playgroud)
我想分离源文件和类文件以保持文件夹的组织,但我目前必须在每次编译后将所有类文件从src文件夹复制到bin文件夹.
有没有办法通过将类文件编译到javac命令中的另一个文件夹来简化此过程?
Jon*_*eet 34
是的,绝对 - 使用-d选项指定输出目录:
javac -d bin src/foo/bar/*.java
Run Code Online (Sandbox Code Playgroud)
请注意,您指定的目录是输出结构的根目录 ; 将自动创建相关的子目录以对应于代码的包结构.
有关更多详细信息,请参阅javac文档.
在这种情况下,您需要发出一个javac命令来编译公式,而另一个命令需要编译问题 - 在编译问题时可能使用公式bin目录作为类路径的一部分.
(您可能需要考虑使用单个源结构但不同的软件包.请注意使用IDE来隐藏这些复杂性 - 尽管不是实际上很难.)