我正在尝试使用“ Renjin Maven插件”将R包转换为可以在Java中与renjin一起使用的jar。
这里有一个描述:
http://docs.renjin.org/en/latest/writing-renjin-extensions.html#renjin-maven-plugin
关于如何创建项目的信息,我已经设法创建了该项目并使用转换后的r文件构建了一个jar,但是我看不到如何包括c和fortran文件。
如果软件包在https://cran.r-project.org/中,Renjin会为您完成,所以我知道这是可能的。我不幸使用的软件包不在cran中。
我尝试将c文件包括在src / main / R文件夹中,并尝试将其放在src / main / c文件夹中,在两种情况下都将其忽略。
最佳答案
renjin-maven-plugin支持将c和fortran代码转换为JVM字节码。
renjin-maven-plugin的这一部分可以达到目的:
<execution>
<id>gnur-compile</id>
<phase>compile</phase>
<goals>
<goal>gnur-compile</goal>
</goals>
</execution>
参见mjkallens对类似问题here的回答。基本上你就是
下载ctsmr最新版本的源代码
打开包装到选择的目录
添加一个调用renjin maven插件的pom.xml文件
添加一个Vagrant文件,该文件类似于用于构建Renjin项目本身的文件,以获取正确版本的gcc等。以便renjin maven插件可以处理c和fortran源。
启动流浪汉并运行mvn clean install
我创建了一个example on github,该详细信息应为您提供一些想法。
关于java - 如何在C和Fortran中使用Renjin Maven插件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58605491/