3

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

この問題を解決するにはどうすればよいですか?

4

1 に答える 1

3

まず、クラスから 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();

clear java変更を行って Java クラスをコンパイルするたびに、変更を有効にする前に matlab を呼び出さなければならないことに注意してください。これには、ワークスペース内のすべての変数をクリアするという不幸な副作用もあるため、呼び出す前に保存する重要なものがないことを確認してください。

于 2013-02-25T15:14:06.300 に答える