在网上找的例子原搬下来,结果出错。
运行环境Matlab2016a,jdk1.7。
.m文件代码
function sum = myadd(x,y)
sum = x + y;
end
class文件代码
import com.mathworks.toolbox.javabuilder.*;
import firstone.*;
public class MJBuilderTest {
public static void main(String[] args)
{
MWNumericArray a = null;
MWNumericArray b = null;
Object[] result = null;
matlabAdd myAdd = null;
try
{
if (args.length != 2)
{
System.out.println("Error: must input 2 numbers!");
return;
}
a = new MWNumericArray(Double.valueOf(args[0]),MWClassID.DOUBLE);
b = new MWNumericArray(Double.valueOf(args[1]),MWClassID.DOUBLE);
myAdd = new matlabAdd();
result = myAdd.myadd(1, a, b);
System.out.print("/nThe sum of " + a.toString() + " and " + b.toString() + " is: ");
System.out.println(result[0]);
}
catch (Exception e)
{
System.out.println("Exception: " + e.toString());
}
结果在result = myAdd.myadd(1, a, b);报错
**The method myadd(int, Object[]) in the type matlabAdd is not applicable for the arguments (int, MWNumericArray, MWNumericArray)
不知道有没有遇到类似问题的朋友 和jdk版本有关么 还是什么问题,调试了好几天都不会弄 球帮助