5

Java から MATLAB コードを実行する際に問題に直面しています。これについて何か知っていることがあれば、私を助けてくれませんか?

4

5 に答える 5

5

MathWork の MATLAB Builder for Java Toolbox を購入したくない場合は、MATLAB の文書化されていない JMI (Java-MATLAB Interface) を使用できます。CSSM ニュースグループ (または Google) で、JMI または JMI に基づく JMatLink を検索してください。MATLAB コード自体には、JMI の使用例がたくさんあります。MATLAB インストール全体で、MATLAB エディターの検索ツールを使用して「jmi」を検索してください。

JMI は、MathWorks によって文書化も公式サポートもされていないことに注意してください。さらに、不適切に使用すると、アプリケーションがハングまたはクラッシュする可能性があります。ただし、ツールボックスとは異なり、無料です。

于 2010-01-25T10:14:03.070 に答える
1

Java アプリケーションで matlab スクリプト/関数を実行するために Java Builder を使用しましたが、非常に簡単で便利なようです。

この目的のために、Java クラスとして matlab スクリプト/関数をデプロイするための Java Builder JA ツールボックスが必要です。

次に、(変換された) Java クラスを Java プロジェクト ライブラリに追加し、さらに javabuilder jar ファイルを追加する必要があります。

上記の手順を実行した後、コードでクラス名を呼び出すだけで、matlab スクリプト (現在はプロジェクト ライブラリの Java クラス) を簡単に実行できます。クラスが matlab 関数の場合、パラメーターを渡して戻り値を簡単に取得できます。

もちろん、それが唯一の方法ではありません。しかし、これは私には比較的簡単に思えます。

これがあなたの質問への答えになることを願っています。

于 2013-05-13T07:51:06.360 に答える
1

Yair が言及した文書化されていない JMI (Java MATLAB Interface) を使用する代わりに、 JMI をラップする Java API であるmatlabcontrolを使用すると、はるかに使いやすくなります。十分に文書化されており、入門用のウォークスルーがあります。JMI を直接使用する場合とは異なり、MATLAB の外部で Java プログラムを実行するときにも使用できます。

于 2011-07-08T23:33:27.543 に答える
0

これを行うには2つの方法があります:

  1. Cインターフェイスを備えたMatlabエンジンを使用します(そのための最初の回答のリンクを参照してください)。これを実行するすべてのマシンにMatlabをインストールする必要があります(詳細については、Matlabライセンスを参照してください)。
  2. Matlabコードをコンパイルして関数のJavaインターフェイスを直接生成するMatlabBuilderforJavaを使用します。このソリューションでは、MatlabコンパイラーとMatlab Builder for Javaを使用する必要がありますが、それ以上支払うことなくソリューションをデプロイできます。各マシンにMatlabコンパイラランタイム(MCR)をインストールする必要がありますが、これは無料であることに注意してください。
于 2010-01-25T07:51:58.623 に答える
0

以下は、 MATLAB コードを Java クラスとして配布できるパッケージです。

于 2010-01-25T06:17:21.993 に答える