我是蚂蚁构建的新手。我正在尝试验证命令行参数。以下是我的代码:
用于接收 args 的 build.xml 片段:
<target name="run" depends="jar">
<java jar="${BUILD}/jar/cmdBuildEx.jar" fork="true">
<arg value="${arg0}"/> <!-- input file -->
<arg value="${arg1}"/> <!-- modify file -->
<arg value="${arg2}"/> <!-- output file 1 -->
<arg value="${arg3}"/> <!-- output file 2 -->
<arg value="${arg4}"/> <!-- output file 3 -->
<arg value="${arg5}"/> <!-- error file -->
<arg value="${arg6}"/> <!-- debug value -->
</java>
</target>
这是我的验证条件:
if ((args.length != 7) || (args[0].equals("${arg0}")) || (args[1].equals("${arg1}")) || (args[2].equals("${arg2}")) || (args[3].equals("${arg3}")) || (args[4].equals("${arg4}")) || (args[5].equals("${arg5}")) || (args[6].equals("${arg6}"))) {
System.err.printf("Error: Incorrect number of arguments. Program accepts %d arguments.", REQUIRED_NUMBER_OF_CMDLINE_ARGS);
System.out.println();
System.err.println("Args found:"+args.length);
System.exit(0);
}
每当我在 cmd 行中给出超过 7 个参数时,它不会抛出任何错误,而是执行我的代码。我不明白我在哪里犯错。任何人都可以帮忙吗?