在单独的JVM中运行目标

时间:2012-05-24 21:03:12

标签: ant exec

wsimport任务中有一个有趣的错误,在任务完成时似乎会破坏类加载器的内容。 NetBeans喜欢在进程中运行ant脚本,这个bug在运行包含任务的脚本后引发了各种各样的破坏。

为了解决由bug造成的破坏,我想强制ant为ant的二次调用创建一个单独的子进程,以便在自己的私有JVM中隔离wsimport任务。

看起来“ant”和“antcall”任务会在同一个JVM中保留目标的调用......虽然我可能错了。

对于用户可能多次安装ant的情况,exec似乎很笨,因为用户运行的ant可能不是ant试图找到executable =“ant”时解析的可执行文件。 / p>

有没有一种安全的方法来获取当前用作在不同JVM中运行目标的ant的蚂蚁?

1 个答案:

答案 0 :(得分:0)

您可以使用ant.home属性的值。

<project default="test">
    <target name="test">
        <echoproperties>
            <propertyset>
                <propertyref prefix="ant."/>
            </propertyset>
        </echoproperties>
        <echo>Ant Home: ${ant.home}</echo>
    </target>
</project>