このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Java アプリケーションでの MATLAB クラスの使用
概要
この例では、MATLAB® クラスの MATLAB ラッパー関数を呼び出す Java® アプリケーションを作成する方法を示します。
この例では、以下の手順を実行します。
MATLAB Compiler SDK™ を使用して、MATLAB ラッパー関数を使用して MATLAB クラスにアクセスするパッケージを作成します。
Java アプリケーションで MATLAB ラッパー関数を呼び出します。
アプリケーションをビルドして実行します。
手順
MATLAB で、パッケージ化対象の MATLAB コードを調べます。この例では、次のコードを使用して、
MyMATLABClass.mという名前の MATLAB クラスを作成します。classdef MyMatlabClass < handle properties (Access = private) x % input variable y % input variable z % result variable end methods function this = MyMatlabClass() this.x = []; this.y = []; end function setInput(this, input) input = input(:); if isnumeric(input) && numel(input) == 2 this.x = input(1); this.y = input(2); end end function result = getResult(this) result = this.z; end function status = compute(this) try this.z = (this.x.^2 + this.y.^2)^0.5; status = true; catch status = false; end end end end
クラスの 4 つの MATLAB ラッパー関数
CreateMyMATLABClass.m、SetInput.m、Compute.m、GetResult.mを作成します。CreateMyMATLABClass.m.
function instance = CreateMyMATLABClass() instance = MyMATLABClass(); end
SetInput.m.
function SetInput(myclass, input_value) myclass.setInput(input_value); end
Compute.m.
function status= Compute(myclass) status = myclass.compute(); end
GetResult.m.
function result = GetResult(myclass) result = myclass.getResult(); end
次の情報を使用して、Java パッケージ コンパイラ アプリまたは
compiler.build.javaPackageで Java パッケージをビルドします。フィールド 値 Java パッケージ名 MyMATLABClass1クラス名 Class1コンパイル対象ファイル CreateMyMATLABClass.m
SetInput.m
Compute.m
GetResult.mたとえば、
compiler.build.javaPackageを使用している場合は、以下を入力します。buildResults = compiler.build.javaPackage(["CreateMyMATLABClass.m", ... "SetInput.m","Compute.m","GetResult.m"], ... 'PackageName','MyMATLABClass1', ... 'ClassName','Class1');
詳細については、Java パッケージの生成と Java アプリケーションのビルドの手順を参照してください。
メモ
MyMATLABClass.mファイルは依存関係の分析でコンパイラによって自動的に含められるため、パッケージに手動で追加する必要はありません。生成された
MyMATLABClass1.jarパッケージが含まれているフォルダーに移動します。Java パッケージ コンパイラを使用した場合、パッケージはbuildフォルダーにあります。MATLAB 関数にアクセスするアプリケーションのソース コードを記述します。この例のコードを次に示します。
コマンド プロンプト ウィンドウを開き、
javadriver.javaとMyMATLABClass.jarが含まれているフォルダーに移動します。javacを使用してjavadriver.javaアプリケーションをコンパイルします。Windows® の場合、次を入力します。
javac -classpath "matlabroot\toolbox\javabuilder\jar\javabuilder.jar";.\MyMATLABClass.jar javadriver.javaUNIX® の場合、次を入力します。
javac -classpath "matlabroot/toolbox/javabuilder/jar/javabuilder.jar":./MyMATLABClass.jar javadriver.java
は、MATLAB または MATLAB Runtime のインストール フォルダーへのパスに置き換えてください。たとえば、Linux® でのパスはmatlabroot/usr/local/MATLAB/R2025aのようになります。javadriverアプリケーションを実行します。Windows の場合、次を入力します。
java -classpath .;"matlabroot\toolbox\javabuilder\jar\javabuilder.jar";.\MyMATLABClass.jar javadriverLinux の場合、次を入力します。
java -classpath .:"matlabroot/toolbox/javabuilder/jar/javabuilder.jar":.\MyMATLABClass.jar javadriverメモ
アプリケーションを Mac 64 ビット プラットフォームで実行する場合は、Java コマンドに
-d64フラグを追加する必要があります。
javadriver プログラムにより、次の出力が表示されます。
--- USE: Constructors --- 1 2.2361 --- Done. ---
参考
compiler.build.javaPackage | Java パッケージ コンパイラ
