gpt4 book ai didi

java - 将行参数从 ant 传递给 main

转载 作者:行者123 更新时间:2023-12-01 12:59:55 26 4
gpt4 key购买 nike

我的问题是如何使用 ant 捕获终端中的参数以使用这些参数运行 main,示例:

    ant 1 2 3 4 5
public static void main(String[] args)
{
int[] meta = {0,0,0,0,0};
for(int i=1; i < 6; i++)
{
meta[i-1] = Integer.parseInt(args[i]);
}
}

我该怎么做,请有人帮助我 C:? 这是我的 build.xml

<project name="Tarea2LP" basedir="." default="main">

<property name="src.dir" value="src"/>
<property name="classes.dir" value="classes"/>
<property name="jar.dir" value="jar"/>
<property name="main-class" value="Board"/>

<target name="clean">
<delete dir="${classes.dir}"/>
<delete dir="${jar.dir}"/>
</target>

<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}"/>
</target>

<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${main-class}"/>
</manifest>
</jar>
</target>

<target name="run" depends="jar">

<java jar="${jar.dir}/${ant.project.name}.jar" fork="true"/>
</target>

<target name="main" depends="run"/>

</project>

最佳答案

如果参数数量已知,您可以使用 -D 选项传递参数,然后在“运行”任务目标中使用“arg”将其传递到 jar 文件,例如

<target name="run" depends="jar">

<java jar="${jar.dir}/${ant.project.name}.jar" fork="true">
<arg value="${arg1}"/>
<arg value="${arg2}"/>
<arg value="${arg3}"/>
<arg value="${arg4}"/>
<arg value="${arg5}"/>
</java>
</target>

你应该调用你的ant文件

ant -Darg1=1 -Darg2=2 -Darg3=3 -Darg4=4 -Darg5=5

关于java - 将行参数从 ant 传递给 main,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23586994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com