使用Java(eclipse2019.03)运行MATLABr2018a生成的jar

一、Matlab生成jar

在命令行直接输入:

deploytool


【注意】如果1处没有Java Package选项

需要在matlab的setup.exe中,补充安装选择MATLAB CompilerMATLAB Compiler SDK

二、检查/配置Java的环境

1、在cmd中java和javac都是有效命令

如果javac无效:

①检查系统变量JAVA_HOME是否为安装JDK的路径;

②(没有就自己新建)检查系统变量CLASSPATH,注意前面有个点“.”:

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

③系统变量PATH:

;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

三、配置eclipse2019.03

【前提】项目中使用的编译器与本机Java(java -version查看)的版本号一致(例如均为1.8):

window->preference:

否则报错:

Unsupported major.minor version 52.0

1、新建项目,导入两个jar包:

①MATLABr2018a安装路径\toolbox\javabuilder\jar\javabuilder.jar

②自己刚刚用matlab生成的jar包

2、(伪)代码

import com.mathworks.toolbox.javabuilder.MWArray;  
import com.mathworks.toolbox.javabuilder.MWClassID;  
import com.mathworks.toolbox.javabuilder.MWComplexity;  
import com.mathworks.toolbox.javabuilder.MWNumericArray;
import com.mathworks.toolbox.javabuilder.MWException;
//假定被打包的.m文件中的函数名为:MyMatlabFun,打包时第3步的类名为:MyClass;  
import MyMatlabFun.MyClass;
public class 函数名 {  

    public static void main(String[] args) {  
    	Object[] result = null; //输出对象
    	MyClass MyMatlabFun  = null;
    	try {
			MyMatlabFun = new MyClass();
		} catch (MWException e1) {
			// TODO 自动生成的 catch 块
			e1.printStackTrace();
		}
    	
    	/*
        像正常java代码中一样,定义输入参数的类型/初始值
        */

        try {
			result = MyMatlabFun.MyMatlabFun(输出参数个数,输入参数1,输入参数2,...,输入参数n);
		} catch (MWException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
        System.out.println(result[0].toString());   
        System.out.println(result[1].toString());  
        ...  
        System.out.println(result[n].toString());  

            // 释放本地资源  
            //MWArray.disposeArray(x);  
            //MWArray.disposeArray(y);   

    }  
  
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值