Java调用Matlab的M文件有不同的方法,目前经过探索和实践,实现了其中的一种方法,故将其记录下来,方便使用。
这里记录的方法是:将Matlab的function程序m文件直接转换生成(build)*.jar包,然后在Java中调用。
一.环境配置
1. JDK版本的选择
目前经过本人的实践发现,JDK的选择版本由三个因素决定:
(1)myeclipse的版本。本人使用的myeclipse版本是myeclipse 9,因此myeclipse自带的JDK版本是1.6(或者现在都叫做JDK 6)版本的,如下图:
(2)由Matlab版本决定。目前在Matlab 2013a版本下如果使用JDK 8的话,是不能将m文件转换生成*.jar包的,在build的时候会出现 “错误:意外的结束标记: * ^”等类似的一大堆错误,具体是什么原因,本人没有深入追究,经过实践,将JDK版本改为 7后就没有这样的问题了,也许是因为Matlab 2013a这个版本与JDK 8之间不兼容导致这样的问题。
(3)由于myeclipse 9的自带JDK版本是6,因此在编译比1.6版本高的JDK版本编译的*.jar包时会出现不能通过的现象。因此在配置环境变量时,如果配置的是JDK 7的环境变量,那么使用Matlab生成转化*.jar包时将使用JDK 7版本来生成*.jar包,在myeclipse 9中编译是无法通过的。
因此需要综合以上三点来决