Передача переменных в arg в Ant Script - PullRequest
0 голосов
/ 18 октября 2011

У меня следующая команда Ant.Мне нужно передать переменную {merged.folder} в строку arg.Это значение берется из файла свойств.Но это не разрешает эту переменную.Есть какой-либо способ сделать это.Можете ли вы помочь мне?

<java fork="true" dir="${shrinksafe.util.path}/buildscripts" classname="org.mozilla.javascript.tools.shell.Main">
    <arg line="releaseDir=${merged.folder}" />
    <classpath>
        <pathelement location="${shrinksafe.util.path}/shrinksafe/js.jar" />
        <pathelement location="${shrinksafe.util.path}/shrinksafe/shrinksafe.jar" />
        <pathelement path="${java.class.path}" />
    </classpath>
</java>

1 Ответ

1 голос
/ 18 октября 2011

Я проверил этот сценарий муравья на основе вашего сообщения:

<?xml version="1.0" encoding="UTF-8"?>
<project default="test_arg_path" basedir=".">
    <property file="props.properties"/>

    <target name="test_arg_path">
        <java dir=".\build\classes" classname="Test">
            <!-- <arg value="${argValue}"/>--> <!-- First variant -->
            <arg line="releaseDir=${argValue} arg2Value" /> <!-- Second variant -->
        </java>
    </target>
</project>

Файл свойств props.properties :

argValue=argVal

Test источник класса:

public class Test {
    public static void main(String[] args) {
        if (args.length == 0) {
            System.out.println("args is empty");
        }
        System.out.println(Test.class + ", arg0: " + args[0]);

        if (args.length > 1) {
            System.out.println(Test.class + ", arg1: " + args[1]);
        }
    }
}

Выход для первого варианта (с использованием значения arg):

Class Test, arg0: argVal

Вывод для второго варианта (с использованием строки arg):

класс Test, arg0: releaseDir = argValкласс Test, arg1: arg2Value

Как видите, с вашим сценарием все в порядке, и это правильно.Проблема, я думаю, в установке значения вашей переменной merged.folder

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...