このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Java アプリケーションへの単純な MATLAB 関数の統合
この例では、Java® アプリケーションで魔方陣を生成する MATLAB® メソッドを呼び出す方法について説明します。
ファイル
| MATLAB 関数の場所 | |
| Java コードの場所 | |
手順
MATLAB に付属している
MagicSquareExampleフォルダーを作業フォルダーにコピーします。copyfile(fullfile(matlabroot,'toolbox','javabuilder','Examples','MagicSquareExample'))
MATLAB コマンド プロンプトで、作業フォルダー内の新しい
MagicSquareExample\MagicDemoCompサブフォルダーに移動します。関数
makesqr.mを確認します。function y = makesqr(x) y = magic(x);MATLAB コマンド プロンプトで、
makesqr(5)と入力します。出力は 5 行 5 列の行列になります。
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9ライブラリ コンパイラ アプリまたは
compiler.build.javaPackageを使用してmakesqr.mをカプセル化する Java パッケージを作成します。以下の情報をプロジェクトに使用します。
パッケージ名 magicsquareクラス名 magicコンパイルするファイル makesqr.mたとえば、
compiler.build.javaPackageを使用している場合は、以下を入力します。buildResults = compiler.build.javaPackage('makesqr.m', ... 'PackageName','magicsquare', ... 'ClassName','magic');
詳細については、Java パッケージの生成と Java アプリケーションのビルドの手順を参照してください。
MATLAB 関数にアクセスする Java アプリケーションのソース コードを作成します。
この例のサンプル アプリケーションは
MagicSquareExample\MagicDemoJavaApp\getmagic.javaにあります。プログラムにより次が実行されます。
入力データを保存する
MWNumericArray配列を作成するmagicオブジェクトをインスタンス化するmakesqrメソッドを呼び出す (最初のパラメーターは出力引数の数を指定し、以降のパラメーターは入力引数として順番に関数に渡される)try-catchブロックを使用して例外を処理するMWArrayメソッドを使用してネイティブ リソースを解放する
MATLAB で、
MagicDemoJavaAppフォルダーに移動します。生成された
magicsquare.jarパッケージをこのフォルダーにコピーします。compiler.build.javaPackageを使用した場合は、以下を入力します。copyfile(fullfile('..','MagicDemoComp','magicsquarejavaPackage','magicsquare.jar'))
ライブラリ コンパイラを使用した場合は、以下を入力します。
copyfile(fullfile('..','MagicDemoComp','magicsquare','for_testing','magicsquare.jar'))
システム コマンド ウィンドウで、
PlotDemoJavaAppフォルダーに移動します。javacを使用して Java アプリケーションをコンパイルします。Windows® では、次のコマンドを実行します。
javac -classpath "matlabroot\toolbox\javabuilder\jar\javabuilder.jar";.\magicsquare.jar getmagic.javaUNIX® では、次のコマンドを実行します。
javac -classpath "matlabroot/toolbox/javabuilder/jar/javabuilder.jar":./magicsquare.jar getmagic.java
は、MATLAB または MATLAB Runtime のインストール フォルダーへのパスに置き換えてください。たとえば、Windows でのパスはmatlabrootC:\Program Files\MATLAB\R2024bのようになります。詳細については、MATLAB により生成された Java アプリケーションのコンパイルと実行を参照してください。
システムのコマンド プロンプトからアプリケーションを実行します。
Windows の場合、次を入力します。
java -classpath .;"matlabroot\toolbox\javabuilder\jar\javabuilder.jar";.\magicsquare.jar getmagic 5UNIX の場合、次を入力します。
java -classpath .:"matlabroot/toolbox/javabuilder/jar/javabuilder.jar":./magicsquare.jar getmagic 5
アプリケーションにより 5 行 5 列の魔方陣がコマンド ウィンドウに出力されます。
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9この例から発展させるには、以下のようにします。
生成されたアプリケーションを別のコンピューターで実行してみる。
compiler.package.installerを使用してパッケージ用のインストーラーをビルドしてみる。複数の関数で構成されたパッケージを統合してみる。
参考
compiler.build.javaPackage | ライブラリ コンパイラ | compiler.package.installer | mcc | deploytool
