我想从Matlab调用我自己的Java程序。
这是我的java程序:
public class TestArgu{
public static void main(String[] args){
System.out.println("Test passing arguments!");
}
public void addNumber(int aNumber){
ansNumber = aNumber+5;
chk = aNumber;
System.out.println("input number = " + chk + ".\n");
System.out.println("ans = " + ansNumber + ".\n");
}
public int ansChk(){
return ansNumber;
}
private int ansNumber;
private int chk;
}
我从这个链接一步一步地做了 http://www.mathworks.nl/support/solutions/en/data/1-URS0E/?...1...
但它无法使用我的程序。
我正在从服务器计算机上运行Matlab程序。
所以我无法编辑classpath.txt
。
如何解决这个问题?
答案 0 :(得分:2)
首先,删除班级中的main函数。然后添加行
package mypackage.release;
在你的课程定义之前。然后使用命令
编译它javac -verbose -cp /home/javaclasses -d /home/javaclasses /home/javasource/TestArgu.java
在matlab中输入
javaaddpath('/home/javaclasses');
clear java;
import mypackage.release.*;
test=TestArgu;
test.addNumber(6);
test.ansChk();
请记住,每次进行更改并编译java类时,必须在更改可用之前在matlab中调用clear java
。这也有清除工作区中所有变量的不幸副作用,因此请确保在调用之前没有任何重要的保存。