Java与Matlab成功合体啦

Java&Matlab混编初始设置

目录:

  • JDK&JRE,Matlab,以及Windows系统版本

  • JDK版本及其环境配置

  • Matlab安装

  • Matlab端函数M文件打包成Jar

  • Myeclipse创建Java项目,并编写调用主函数


JDK&JRE,Matlab,以及Windows系统版本

  Windows系统版本:Win7 旗舰版,64位
  JDK&JRE:jdk1.7.0_79_64位,运行环境jre1.7.0_79_64位,配套编辑工具为:MyEclipse 10 (三者均为配合java开发同事的版本而配);jdk在甲骨文中的下载地址,以及登录甲骨文需要的账号密码,
  Matlab:Matlab R2015a 64位(不同matlab版本对应不同java版本,此处加上matlab对应jdk的表,以及怎么查看matlab适合的jdk版本,和matlab目前处于什么版本的jdk)

JDK版本及其环境配置

jdk&jre下载:http://www.oracle.com/technetwork/java/javase/archive-139210.html由该地址进入,下载符合你系统软件要求的版本;如需下载最新版本,请直接去oracle首页下载。
jdk安装较为简单,安装完成后必须进行环境变量配置。
jdk环境变量配置步骤如下
(1)计算机—>系统属性—>高级—>环境变量;
(2)系统变量中添加两个变量:(i)JAVA_HOME,值为D:\Applications\Java\jdk1.7.0_79这是jdk在我电脑里的安装路径;(ii)classpath,值为.;D:\Applications\Java\jdk1.7.0_79\jre\lib\rt.jar;
(3)系统变量中的Path变量的值最前面添加如下路径:%JAVA_HOME%\bin;
(4)变量配置完成,随后cmd进入命令窗口,输入java -version回车,出现如下输出,证明环境变量配置成功。
这里写图片描述

Matlab安装

由于jdk是1.7.0_79,那么和这个版本jdk兼容的matlab版本偏高,本机选择Matlab R2015a版本,附下载和安装地址:http://www.yishimei.cn/network/549.html
安装过程中,安装到产品配置说明(Product Configuration Notes)时,请注意里面的各项说明,特别是Matlab Runtim,SDK,MCR三项,必要时请手动下载安装这两项;具体也说不清楚为什么,可能与M文件package成jar包时的编译环境有关。第一次没有手动安装上面三个文件,package的时候出现warning,甚至直接无法package成功。
安装成功后,在matlab command窗口输入如下两个命令:version -java,getenv JAVA_HOME,输出结果如下:
这里写图片描述
version -java:输出为matlab r2015a兼容的jdk版本1.7版本
getenv JAVA_HOME:输出为当前jdk版本1.7.0_79,属于1.7版本
如此可见,当前jdk版本与matlab版本互相匹配

Matlab端函数M文件打包成Jar

这个打包过程,论坛中已有很多伙伴分享,且不存在什么技术性问题,在此就不再重复赘述。

Myeclipse创建Java项目,并编写调用主函数

本机用的是myeclipse10,安装完成后
这里写图片描述
按照上图黄圈的路径,可找到已安装的JDK.一般,Sun JDK1.6为myeclipse自带的jdk,只需勾选自己安装的jdk即可。
到目前为止,非软件出身的编程小白就暂时自认为,此刻JAVA,MATLAB,MYECLIPSE已经完全配置安装完成了。接下来就进入正式工作——java调用matlab函数

创建java project

(I)project里面创建类,导入build path—>add external archieves—>(1)在matlab上自己package的jar 包:import myfuzzy2.*;
(2)matlab自带toolbox—>javabuilder—>jar里面的java工具包:import com.mathworks.toolbox.javabuilder.*;
(II)编写主函数
编程小白,接触java2周,依样画葫芦,摸索着写出来属于自己的java调用matlab主函数,且编译通过。总结一下几点:
(1)输入输出的传递;
(2)MWNumericArray类的调用和实例化;(3)try……catch……finally语句运用;
(4)MWArray.disposeArray,MWClassID.DOUBLE,父类Object[],实例化例句:Class1 theFactor=new Class1();……

以上这些总结点都是出于半懂不懂之间,甚至还不及,学习的路还很长……

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值