3

次のように、ANT execコマンドに一連の環境変数があります。

<exec dir="${basedir}/src/" command="/usr/local/covidien/HDE/x86.linux2.6/bin/idlpp -S -l java ${basedir}/src/HelloWorldData.idl" >         
                <env key="OSPL_HOME" value="/usr/local/covidien/HDE/x86.linux2.6"/>
                <env key="OSPL_TARGET" value="x86.linux2.6"/>
                <env key="PATH" value="$OSPL_HOME/bin:$PATH"/>
                <env key="LD_LIBRARY_PATH" value="$OSPL_HOME/lib:$LD_LIBRARY_PATH"/>
                <env key="CPATH" value="$OSPL_HOME/include:$OSPL_HOME/include/sys:$CPATH"/>
                <env key="OSPL_TMPL_PATH" value="$OSPL_HOME/etc/idlpp"/>
                <env key="OSPL_URI" value="$OSPL_HOME/etc/idlpp"/>
                <env key="CLASSPATH" value="$OSPL_HOME/jar/dcpssaj.jar:$CLASSPATH"/>
                <env key="CLASSPATH" value="$OSPL_HOME/jar/dcpscj.jar:$CLASSPATH"/>
        </exec>

しかし、共有ライブラリのロード中にエラーとしてエラーがスローされます: libddsutil.so: .*.so ファイルを含む外部ライブラリがあります。exec コマンドでそれを含める必要があります。exec コマンドで外部ライブラリを追加する方法

4

1 に答える 1

5

Unix環境変数はANTファイル内では機能しないため、ANTプロパティとしてインポートする必要があります。また、コマンドの引数は個別に指定する必要があります。execタスクのドキュメントを参照してください

次のようなものを試してください。

<property environment="env"/>

<exec dir="${basedir}/src/" executable="/usr/local/covidien/HDE/x86.linux2.6/bin/idlpp">
        <arg line="-S -l java ${basedir}/src/HelloWorldData.idl" >         
        <env key="OSPL_HOME" value="/usr/local/covidien/HDE/x86.linux2.6"/>
        <env key="OSPL_TARGET" value="x86.linux2.6"/>
        <env key="PATH" value="${env.OSPL_HOME}/bin:${env.PATH}"/>
        <env key="LD_LIBRARY_PATH" value="${env.OSPL_HOME}/lib:${env.LD_LIBRARY_PATH}"/>
        <env key="CPATH" value="${env.OSPL_HOME}/include:${env.OSPL_HOME}/include/sys:${env.CPATH}"/>
        <env key="OSPL_TMPL_PATH" value="${env.OSPL_HOME}/etc/idlpp"/>
        <env key="OSPL_URI" value="${env.OSPL_HOME}/etc/idlpp"/>
        <env key="CLASSPATH" value="${env.OSPL_HOME}/jar/dcpssaj.jar:${env.CLASSPATH}"/>
</exec>
于 2012-06-02T15:43:46.217 に答える