为ant指定python环境变量



更新:忘记sysproperty只适用于java。

<target name="uploadFile">
        <pathconvert property="orchestration.properties" refid="orch.config" />
        <exec executable="python" failonerror="true">
            <env key="PYTHONPATH" value="${basedir}/lib/python"/>
            <arg value="${basedir}/upload.py"/>
            <arg value="${basedir}/file.txt"/>
        </exec> 
</target>

lib/python目录中有一个自定义的python包,我想在ant运行exe时包括它。我该怎么做?它不在python中,所以我无法将它添加到路径中。

好的,我已经解决了这个问题。Python路径有效,但我忘了设置新的环境。如果不设置新环境,它会自动恢复到旧环境。

如果你想从ant运行python命令,但在你的basedir中有模块,而不是python目录,这就是你的做法。

<target name="uploadFile">
        <property environment="env"/>
        <pathconvert property="orchestration.properties" refid="orch.config" />
        <exec executable="python" failonerror="true" **newenvironment="true"**>
            <env key="PYTHONPATH" value="${basedir}/lib/python"/>
            <arg value="${basedir}/upload.py"/>
            <arg value="${basedir}/test1.txt"/>
        </exec> 
</target>

最新更新