java调用matlab混编问题,调用jar包方法时出错

在网上找的例子原搬下来,结果出错。
运行环境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版本有关么 还是什么问题,调试了好几天都不会弄 球帮助

myadd(int, Object[]) //看看这里

其实你的Java代码就编译不过吧?
myAdd(int, Object[]) . 第二个参数需要一个数组.
所以你的 调用方式 myAdd(1, a, b) 是没法通过的.
推荐你将 a,b 放到数组里 [a, b];
或者是 修改 你的方法. myAdd(int i , Object... objs). 调用时 (1, a, b)
这两种都可以解决