0

情况如下:

我正在开发具有相同编译过程/文件结构的各种项目。我想,而不是打字,javac dir\*.class我只想使用批处理文件“compile.bat”

文件结构通常是 com\jseb{project name}.java 文件,但我希望尽可能抽象,以便将来使用多个包。这是我到目前为止所拥有的(不起作用):

@echo off
javac com\*\*.java
4

3 回答 3

1

如果要编译所有项目,那么

@echo off
for /f "delims=" %%i in ('dir /b /ad com\*') do javac "com\%%i\*.java"

连续构建所有项目(一次一个)

或者

@echo off
for /f "delims=" %%i in ('dir /b /ad com\*'
 ) do start "Compiling %%i" javac "com\%%i\*.java"

并行构建。

于 2013-04-21T04:38:18.827 回答
1

您可以拥有一个包含目录名称的通用批处理文件。

编译.bat:

@echo off
javac com\%1\*.java

%1替换传入批处理文件的第一个参数的方法。

从命令行使用:

compile proj-dir
于 2013-04-20T18:31:39.663 回答
0

不。

转向更好的软件工程方法和技术,以及更复杂、强大和高效的软件开发工具。

  1. 学习和使用构建系统。从Ant开始,然后转到Maven

  2. 并学习和使用 IDE。尝试Eclipse

只需很少的努力,从提供的示例 ant 脚本开始,您就可以实现这样的解决方案,通过依赖检查自动编译复杂目录结构中的所有代码文件。

于 2013-04-20T19:16:03.337 回答