从Java调用Fortran子例程

时间:2010-07-12 20:29:13

标签: java fortran

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

2 个答案:

答案 0 :(得分:4)

查看this document,它详细介绍了将本机代码(fortran / c)与Java集成的过程。当然,结果将取决于平台。

答案 1 :(得分:4)

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

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

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