从Java调用Fortran子例程

我有一个用Fortran编写的庞大的子程序,我需要在Java程序中使用它。 我怎么称呼它? 我使用的是ubuntu 10.04。

看一下这个文档 ,它详细介绍了将本机代码(fortran / c)与Java集成的过程。 当然,结果将取决于平台。

@extraneon引用你的论文是几年前我将Fortran子程序集成到Java程序中的方法。 但是,如果我今天再次尝试这样做,我会考虑使用 Fortran 2003标准中定义的Cfunction的互操作性,并由一些编译器的最新版本实现。 我希望我可以编译Fortran子程序来查看JNI,就像用C语言编写的那样。这样你就可以删除C包装器了。

如果你的编译器没有实现与Cfunction的互操作性,那就放弃并获得一个。

编辑:另一个想法发生在我身上:如果Fortran子程序的执行时间很长,你应该考虑通过让Java将一些输入数据放入文件,并修改Fortran以从文件中获取输入来将其与Java集成。 然后Java程序可以调用系统来启动Fortran。 以同样的方式传回结果。 这是一个真正的kludge,但你可能会发现它比通过JNI更容易实现。 此外,您可以在与JNI和互操作性等进行斗争时将其实现为止损。