2013-02-25 45 views
2

我想從Matlab調用我自己的Java程序。如何從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

我總是用這種方式[檢查出來](http://blogs.mathworks.com/community/2009/07/06/calling-java-from-matlab) – knowbody 2013-02-25 14:41:41

回答

2

首先,從您的班級中刪除主要功能。然後添加行

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類,則必須調用clear java MATLAB中的變化可用之前。這也有清除工作區中所有變量的不良副作用,因此請確保在調用它之前沒有任何重要的保存變量。

+0

很好的知識 – 2013-03-04 22:57:28