Matlab调用Scala函数

4
2个回答

4

这也适用于Scala代码。只需假装你正在进行Java互操作(例如,名为+的方法实际上应该是$plus),并确保scala-library.jar在Matlab的类路径中(例如,使用javaaddpath)。

顺便说一下,我以前做过Java/Matlab互操作,它并没有像人们所希望的那样“容易集成”。传递数据有点尴尬,你可能会不时地遇到类加载器和/或类路径问题。

我会谨慎计划一个有很多紧密连接的互操作的大型项目。根据我的经验,使用Unix的思维方式通常效果更好:制作独立的工具,让它们各自完成自己的事情,并将它们链接在一起以获得你想要的结果。例如,我经常让Scala编写Matlab代码并调用Matlab运行它,或者让Matlab使用系统来启动Scala程序来处理数据的子集。

因此,从Matlab调用Scala完全可行,并且对于简单接口,看起来就像Java。只需尽量保持接口简单。


0
你可以将你的Scala代码封装在另一种容易被Matlab调用的语言中,比如Java或C。由于你似乎了解Java,你可以使用这些示例来学习如何将你的Scala方法封装在Java方法中,以便从Matlab中调用。还有许多其他方法可供你使用,使用不同的语言(MEX文件loadlibrary等)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接