Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将变量从ant传递到java文件_Java_Ant_Parameter Passing - Fatal编程技术网

如何将变量从ant传递到java文件

如何将变量从ant传递到java文件,java,ant,parameter-passing,Java,Ant,Parameter Passing,我在ant中有一些测试用例,每一个都ping一个URL,我有一个java类,它正在ping URL并处理我的测试用例所需的东西,我正在从我的ant构建文件编译和运行java类 所有测试用例的URL都是不同的,所以我想将URL从ant文件传递到java类,但我在这样做时遇到了困难,有人对如何将变量从ant传递到java类有什么建议吗。现在,我正在为一个测试用例传递java文件本身中的URL,但我不想每次为不同的URL为所有测试用例创建不同的java文件 这是我的testcase 1目标,它调用pi

我在ant中有一些测试用例,每一个都ping一个URL,我有一个java类,它正在ping URL并处理我的测试用例所需的东西,我正在从我的ant构建文件编译和运行java类

所有测试用例的URL都是不同的,所以我想将URL从ant文件传递到java类,但我在这样做时遇到了困难,有人对如何将变量从ant传递到java类有什么建议吗。现在,我正在为一个测试用例传递java文件本身中的URL,但我不想每次为不同的URL为所有测试用例创建不同的java文件

这是我的testcase 1目标,它调用ping目标:

<target name="01">
    <description>
    @testlogic.group type="category" values="mats"
    Incremental response data stress test, multi-thread model
    </description>
    <antcall target="pingOHSJava">
    <param name="out.log" value="tiapwt01.log"/>
    <param name="ohs.name" value="ohs1"/>
    <param name="url" value="/waiter/servlet/ServletStressMulti?mode=1"/>
    <param name="para1" value="1"/>  
    <param name="para2" value="10"/>
    <param name="para3" value="100"/>
    <param name="para4" value="10"/>
    </antcall>

    <fail message="test FAILED found.. failing">
        <condition>
            <resourcecontains resource="${tiapwt.base.dir}/common/output/tiapwt_content.txt" substring="FAILED"/>
        </condition>
    </fail> 
</target>
<target name="pingOHSJava">
    <property name="srcdir" location="${functional.base.dir}/tiapwt/common/java" />
    <path id="classpath.test">
        <pathelement location="/scratch/skaneria/Dwnld/junit-4.10.jar" />
    </path>
    <property name="lib.dir" value="../common/jars" />
    <taskdef resource="org/testlogic/toolkit/asserts/antlib.xml">
        <classpath>
            <fileset dir="${lib.dir}" includes="tlt-asserts-0.3.jar" />
        </classpath>
    </taskdef>

    <delete verbose="true">
            <fileset dir="${srcdir}" includes="**/*.class" />
        </delete>
    <property name="urlPing" value="http://${ADMIN_HOST}:${APACHE_PORT}${url}"/>
    <trycatch property="pingOutput">
    <try>
    <javac srcdir="${srcdir}" destdir="${srcdir}">
        <classpath refid="classpath.test"/>
        </javac>
    <java classname="HttpURLConnectionExample" fork="true" failonerror="true">
    <classpath path="${srcdir}"/>

    </java>
    </try>
    <finally>
     <echo file="${twork.dir}/${out.log}" append="false">
URL: ${urlPing}
parameter 1 : mode=${para1}
parameter 2 : iterations=${para2}
parameter 3 : initial=${para3}
parameter 4 : increment=${para4}
------------------------------------------
${pingOutput}
       </echo>
    </finally>

    </trycatch>

    </target>

你能把你的代码贴在这里吗?可能是你的重复。我已经回答了这个问题,但它没有回答如何使用java类中ant target传递的变量。谢谢。我试着使用上面链接的答案,它正在工作。
private void sendGet() throws Exception {

        String url = "http://slc06mwj.us.oracle.com:7777/waiter/servlet/ServletStressMulti?mode=1&iterations=10&initial=100&increment=10000";

        URL obj = new URL(url);
        HttpURLConnection con = (HttpURLConnection) obj.openConnection();
        // optional default is GET
        con.setRequestMethod("GET");
        //add request header
        con.setRequestProperty("User-Agent", USER_AGENT);
        try{
        int responseCode = con.getResponseCode();

        System.out.println("\nSending 'GET' request to URL : " + url);
        System.out.println("Response Code : " + responseCode);
        System.out.println("Response Message : " + con.getResponseMessage());
        } catch(Exception e){
            System.out.println("error");
        }