近期参与项目负责把Matlab编写代码打包成为Jar文件交付给Java项目使用,并对之间的衔接部分编写接口代码,遇到了很多问题,学习了Matlab CompilerSDK 的使用,现分享总结如下:
我的网盘分享(matlab2017a)
链接:https://pan.baidu.com/s/15a8xLdiPvxbrWpSJDaXmcA 密码:os6t
一、Matlab Compiler SDK 简述
Matlab Compiler SDK支持将Matlab程序封装为C/C++、.NET、Java 或 Python的类库,从而实现对于Matlab程序的调用,除此之外Matlab Compiler对于Matlab代码进行了封装,保护了代码安全。
二、Matlab Compiler SDK 使用
以将Matlab程序封装为Java类库Jar文件为例,描述该功能使用的过程:
1.首先确认Matlab中使用的JDK与项目使用是否一致,因为Matlab打包成Jar时,需要调用Javac生成class文件,JDK与项目使用不同会导致无法调用。注意:本项目中使用的是JDK1.8,版本较高,在matlab2017a以前的版本均不支持此版本的jdk,在matlab2017a以后的版本可以使用此版本进行打包。
图1.获取matlab使用jdk

图2.获取本机项目使用jdk
function [Res] = add(x,y)
Res = x + y;
end
2.使用deploytool在命令行打开打包部署工具,使用Library Compiler进行类库类型的打包,各项功能如下图所示:
图3.打开部署工具
3.打开Matlab Compiler,选取打包类库语言,选择matlab程序,填写相关类名等信息。