白旗製作所

MATLABからjavaクラス、jarファイルを扱う

ちょっと便利そうだな-と思い、MATLABからjavaクラスを呼び出してみたので方法をメモしておきます。

参考:http://www.mathworks.co.jp/jp/help/matlab/matlab_external/creating-and-using-java-objects.html
MATLAB-高度なソフトウェア開発-外部プログラミング言語インターフェイス-Java ライブラリ-javaオブジェクトの作成と使用
http://lunran.sakura.ne.jp/wordpress/category/matlab/
Matlab - Lunran Studio


①javaクラスをmatlabが対応しているバージョンでビルドしておきます。
以下のコマンドでmatlabが対応しているjavaバージョンを調べます。
version -java

その後、eclipseのプロジェクト→プロパティ→Java Build Path→ライブラリー→JREシステム・ライブラリー
の実行環境を、上記バージョンに変更してビルドしておきます。

②コンストラクタを初期化メソッドにしておきます。
javaクラスにコンストラクタがあると、うちの環境では以下の様なエラーを吐いて使えなかったので、
No constructor ClassName with matching signature found

コンストラクタは初期化メソッドに代替しておきます。
private void ClassName()
{
  ...
}


③.classファイルのあるパスをダイナミッククラスパスに追加します。(jarファイルも同様)
javaclasspath('C:\workspace\ClassTest\bin\');

以下のコマンドでダイナミッククラスパスに追加されたかを確認しておきます。
javaclasspath

④使用例1:クラスをインスタンス化してみます。
instanceName = javaObject('ClassName');
以下の方法でもOKです。
instanceName = ClassName;

④使用例2:クラスのメソッドを使用してみます。
return_value = javaMethod('methodName', instanceName, arg1, arg2, arg3);
以下の方法でもOKです。
return_value = instanceName.methodName(arg1, arg2, arg3);


これでjavaクラスもMATLABで使いまわせるようになりました。
スポンサーサイト
  1. 2014/08/29(金) 11:44:46|
  2. Java
  3. | トラックバック:0
  4. | コメント:0

twitter

プロフィール

dededemio

Author:dededemio
某電機メーカーエンジニア。
真空管からプログラミングまでゆるゆると。

最新記事

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

Java (8)
未分類 (0)
真空管 (2)
キー配列 (2)
電子回路 (1)
マイコン (1)
PC部品 (2)
VPN (1)
Android (2)
opera (3)
C# (0)
プログラミング (1)
FTP (1)
メール (1)
tex (1)
音源 (2)
Ubuntu (1)
Python (5)
ブログパーツ (1)
GitHub (0)
Gist (1)
Vivaldi (1)
WICED Sense (2)
害虫駆除 (1)

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

QRコード

QR