试图在ant中使用exec可执行文件来运行R.

时间:2017-11-10 15:46:41

标签: java r ant

我在实验中使用了以下开源版本的图像J:

https://github.com/pcj/arterioj

它使用ANT。

蚂蚁目标中有: 统计

 <!-- ================================================================ -->     
 <!-- Stats and plot generation tasks -->
<!-- ================================================================ -->

 <target name="stats">
<exec executable="R">
  <arg line="--vanilla --no-readline --quiet --slave --file=${basedir}/ldip-data.R --args"/>
</exec>
</target>

当我尝试使用此目标时,我收到以下构建错误消息:

建立失败 /Users/James/ArterioJ/build.xml:179:执行失败:java.io.IOException:无法运行程序“R”(在目录“/ Users / James / ArterioJ”中):error = 2,没有这样的文件或目录

我不确定如何解决这个问题。我试图将R包复制到/ users / James / ArterioJ目录中,看看是否有帮助,但没有效果。

由于

1 个答案:

答案 0 :(得分:0)

您可能希望指定R可执行文件的完整路径,例如:

<property name="r.home" value="/home/me/R_INSTALL"/>

<target name="stats">
  <exec executable="${r.home}/R">
    <arg line="--vanilla --no-readline --quiet --slave --file=${basedir}/ldip-data.R --args"/>
  </exec>
</target>

或者,如果可执行文件的路径是PATH环境变量的一部分,则只需将searchpath="true"属性添加到exec任务:

  <exec executable="R" searchpath="true">
    <arg line="--vanilla --no-readline --quiet --slave --file=${basedir}/ldip-data.R --args"/>
  </exec>

以下是Ant documentation about searchpath的摘录:

  

当此属性为true时,则为系统路径环境变量   将在解析可执行文件的位置时搜索