一、.matlab程序打包成jar包
1.测试matlab函数

function [result1, result2, result3] = test(input)
  result2 = 3;
  result3 = 2;
  result1 = input;
end

java将代码打成jar包 如何将代码打包成jar_java将代码打成jar包


2.在命令行窗口输入deploytool,并选择library compile

java将代码打成jar包 如何将代码打包成jar_java_02


3.左侧选择Java Package,点击旁边的加号并选择要编译的M文件

java将代码打成jar包 如何将代码打包成jar_java将代码打成jar包_03


4.修改类名(非必要)为了在调用的时候,更加清晰,建议对类名和包名进行必要的修改,否则会使用Class1

java将代码打成jar包 如何将代码打包成jar_matlab_04


5.点击Package按钮

java将代码打成jar包 如何将代码打包成jar_算法_05


6.耐心的等待,执行成功后,会生成以下文件

java将代码打成jar包 如何将代码打包成jar_java将代码打成jar包_06


二、Java项目导入所需的jar包

创建项目,或者在已有的项目里导入包,下面我们创建新项目用idea来进行

java将代码打成jar包 如何将代码打包成jar_jar_07


保持默认点击next

java将代码打成jar包 如何将代码打包成jar_jar_08


继续next

java将代码打成jar包 如何将代码打包成jar_java将代码打成jar包_09


修改项目名和路径,finish

java将代码打成jar包 如何将代码打包成jar_matlab_10


三、创建好项目后,Java项目导入jar包1、java项目在没有导入该jar包之前

java将代码打成jar包 如何将代码打包成jar_java将代码打成jar包_11


2、点击 File -> Project Structure(快捷键 Ctrl + Alt + Shift + s)

java将代码打成jar包 如何将代码打包成jar_jar_12


java将代码打成jar包 如何将代码打包成jar_matlab_13


3、在 “Dependencies” 标签界面下,点击右边绿色的 “+”号,选择第一个选项“JARs or directories…”,选择相应的jar包,点“OK”,jar包添加成功

java将代码打成jar包 如何将代码打包成jar_jar_14


添加必要的Jar包

先将for_redistribution_files_only中的jar包导入到工程中,同时将matlab安装目录下的Matlab->toolbox->javabuilder->jar->javabuilder.jar加入到工程中,可以直接将包javabuilder.jar,复制到项目文件夹中

java将代码打成jar包 如何将代码打包成jar_matlab_15


4.已导入jar包

java将代码打成jar包 如何将代码打包成jar_jar_16


5.在src中创建,类

java将代码打成jar包 如何将代码打包成jar_java_17


并将测试语句输入

import

import com.mathworks.toolbox.javabuilder.*;
import test.Test;//此处的test为前面的包名,Test为选定的类名

调用函数

public class Main {

    public static void main(String[] args) {
    // write your code here
        MWNumericArray input = null;
        Object[] result = null;
        Test test = null;
        try {
            input = new MWNumericArray(Double.valueOf(15),
                MWClassID.DOUBLE);
            test = new Test();
            result = test.test(3, input);
            System.out.println(result[0]);
            System.out.println(result[1]);
            System.out.println(result[2]);
        } catch (MWException e) {
            e.printStackTrace();
        } finally {
            MWArray.disposeArray(input);
            MWArray.disposeArray(result);
            test.dispose();
        }
    }

}

java将代码打成jar包 如何将代码打包成jar_matlab_18


6.运行

java将代码打成jar包 如何将代码打包成jar_java_19


结果

java将代码打成jar包 如何将代码打包成jar_jar_20

参考
如何将Matlab代码转换成JAVA可用的Jar包

IntelliJ IDEA java项目导入jar包