質問

Iは変調し、いくつかの信号を復調MATLABでコードを書かれています。私はdeploytoolを使用してそれらを展開し、.jarはGUIなしで一つのアプリケーションで動作しますが、私のGUIを使用してアプリケーションでUndefined variable "modem" or class "modem.pskmod".を与えます。

基本的に、私は、私は周りを見てきたように、私はこのエラーに多くのドキュメントを見つけることはありませんが発生し、このエラーが発生しますかを知りたい。

それは別であるアプリケーションで動作しますが、失敗した理由メソッドを呼び出すときに、コードIの使用がほぼ同じであるとき、私は理解していないとして、

役に立ちましたか?

解決

[OK]を、多くの試験後及びGUIことなく、アプリケーションおよびGUIを使用してアプリケーションとの間の差を比較します。私は私の問題への解決策を見つけます。

アプリケーションの開始から方法INIT GUI実行せずにアプリケーションとして

(一つだけスレッドがある)
import matlabFunction.*;
public static void main(String[] args) {
matlabFunction test = new matlabFunction(); test.runFunction(1, lstABC.toArray());
}

しかし、GUI私と私のコードEDT

の内側にあるのJFrame(メイン()私のinitコードを含ん)内からのinitメソッドを実行中

public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() {

        public void run() {
            try {

                new main();
            } catch (Exception p) {
            }
        }
    });
}  

エラーは、MATLAB方法を初期化するために、上記の方法で発生します。しかし、以下のように、initメソッドを呼び出すのI変更方法は、エラーがある場合は解決します。

public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() {

        public void run() {
            try {
                matlabFunction test = new matlabFunction();
                new main(test);
            } catch (Exception p) {
            }
        }
    });
} 

だから、私は私の問題の原因がアプリケーションを起動し、「最初」のスレッドからのinitメソッドを呼び出していないと信じています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top