2024-05-14 00:16:10 | 我爱编程网
在Java中调用Matlab的方法时,有三种方式。大致都有2个参数,第一个参数是定义输出结果,第二个参数为输入参数。
方式一:functionName(int arg0, Object... agr1): Object[]
方式二:functionName(List arg0, List agr1): void
方式三:functionName(Object[] arg0, Object[] agr1): void
一、matlab版本必须支持java
在command 模式下面运行deploytool,如果支持该命令即可使用
二、matlab中function的书写
%定义一个函数operation(a,b),求a与b的加减乘除运算,并返回结果
%函数定义function 输出变量列表[s,m,...] 函数名(输入变量列表)sum,sub,mul,div中
function [sum,sub,mul,div] = operation(a,b);
sum = a + b;
sub = a - b;
mul = a * b;
div = a / b;
end
PS:上面function后中括号部分与java中调用该operation的返回值有关系,在java中调用的 Object result[] = XXX.operation(4,a,b); 4表示有4个返回值,分别存放在result[0]到result[4]中。
三、使用matlab编译生成jar
在matlab命令窗口下输入 deploytool,就会弹出一个编译窗口,
然后点击,file,选择new-deployment project,
然后选择matlab builder jave。
name的地方填写工程名,
ocation填写该工程的存储位置。我爱编程网
点击ok。
然后,把m文件添加到工程中,先new一个class,这个class的名字就是你将来在java中需要new的class的名字,也就是matlab中operation所在的class名字然后将你的m文件添加到这个class目录下,然后直接build即可。
四、在java中使用matlab的函数
现在eclipse下面new一个新的java工程,然后将第三部build成功后产生的文件夹下面的distrib目录中的XXX.jar 以及你matlab安装目录下/toolbox/javabuilder/jar/javabuilder.jar加入你的java工程extend lib 中去。
然后你可以清晰的看到XXX.jar中包含的函数和类
五、可能碰到的问题
Exception in thread "main" java.lang.UnsatisfiedLinkError: Failed to find the library libmwmclmcrrt.so.7.13, required by MATLAB Builder JA, on java.library.path.
This library is typically installed along with MATLAB or the MCR, its absence may indicate an issue with that installation or the current path configuration.
The MCR version that this component is trying to use is: 7.13.
Failed to find the library mclmcrrt710.dll,required by MATLAB Builder JA, on java.library.path
原因是2009a要对应安装mclmcrrt7.10。在MATLAB安装目录下查找:\toolbox\compiler\deploy\win32,找到MCRInstaller.exe 安装,重启Eclipse即可。
资料来源:
_stu_zhang/article/details/7605391
我爱编程网(https://www.52biancheng.com)小编还为大家带来java调用matlab的相关内容。
我分别百度了那两个问题,解决方案好像是一样的。
把你的matlab的bin的路径添加到系统的path路径中,也可以把你的mcr的bin路径添加到path中,你可以采用命令行的形式:
set Path=%Path%;
或者
set Path=%Path%;
参考网址:
-78FIKN/index.html?product=MJ&solution=1-78FIKN
_thread/296636
原文是:
You are receiving this error because the required "bin" directories of either the MATLAB or MATLAB Compiler Runtime (MCR) installations have not been set up correctly on your Windows machine's PATH environment variable. You can make the necessary runtime libraries visible to MATLAB-compiled components by adding either:
to your system PATH, depending on whether you are developing against a local MATLAB installation, or the MCR. Either replace
请问PHP构造函数的含义php的两大oop使用型函数:构造函数(__construct)和析构函数(__destruct);构造函数:当在某一页面写了众多函数,其中就包括构造函数,当你调用其中任一函数时,都将在调用此函数前先调用构造函数,如:你把链接数据库代码写到构造函数里面,然后在使用增删改查时,就不用再写连接s数据库语句了,因为有构造函数在,你就只用写增删改查类sql语句就可以了。
PHP中的常用数组操作方法有哪些PHP中的常用数组操作方法(每种都给你举个2个例子)一、数组操作的基本函数数组的键名和值array_values($arr); 获得数组的值array_keys($arr); 获得数组的键名数组的内部指针current($arr); 返回数组中的当前单元pos($arr); 返回数组中的当前单元数组和变量
python有哪些就业方向1、Web开发(Python后端)Python有很多优秀的Web开发框架,如Flask、Django等,依靠这些框架可以快速帮助我们搭建一个网站,当需要新功能时,Python只需要添加几行代码即可。比如知乎、豆瓣、小米这样的大厂,早期网站也都是用Python所搭建的,国外更多,如YouTube、Quora、Reddit等顶级流量的网站,也都是依靠Python
java框架有哪些常用框架十大常用框架:一、SpringMVC二、Spring三、Mybatis四、Dubbo五、Maven六、RabbitMQ七、Log4j八、Ehcache九、Redis十、Shiro延展阅读:一、SpringMVCSpringWebMVC是一种基于Java的实现了WebMVC设计模式的请
php将string类型转为int类型有哪些方法php将string类型转为int类型的方法有:1、强制类型转换方法;2、内置函数方法;3、格式化字符串方法。强制类型转换方法是指在要转换的变量之前加上用括号括起来的目标类型,如【(int)$var】。具体方法:(视频教程推荐:php视频教程)1、强制类型转换方式强制类型转换方式,就是“在要转换的变量之前加上用括号括起来的目标
php网站常见的攻击方式有哪些以及应对方法?1)特征检测特征检测对已知的攻击或入侵的方式作出确定性的描述,形成相应的事件模式。当被审计的事件与已知的入侵事件模式相匹配时,即报警。原理上与专家系统相仿。其检测方法上与计算机病毒的检测方式类似。目前基于对包特征描述的模式匹配应用较为广泛。该方法预报检测的准确率较高,但对于无经验知识的入侵与攻击行为无能为力。2)统计检测统计模型常用
php编程:用php删除txt文件中的空行的方法有哪些?文件路径的扩展格式需要.ini的,当然也可以修改php配置文件支持更多的扩展名。classFileUtil{publicstaticfunctiondelRepeatRow($filePath){$fileArr=file($filePath);$newFile="整理过的文件:\n时间:".date('Y-
用Java实现多线程有哪些途径?1,创建Thread类的子类在这个途径中,用户程序需要创建自己的Thread类的子类,并在子类中重新定义自己的run()方法,这个run()方法中包含了用户线程的操作。这样在用户程序需要建立自己的线程时,它只需要创建一个已定义好的Thread子类的实例就可以了。例:publicclassTestThread{...(中间的就不写了)}c
2025-02-01 20:24:39
2025-02-12 03:21:37
2025-02-10 15:19:48
2025-01-28 17:58:32
2024-11-22 05:08:01
2024-09-10 08:50:00