亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

從java中調用matlab詳細介紹

2019-11-26 15:49:56
字體:
來源:轉載
供稿:網友

前段時間摸索了java調用matlab東西,不說學的有多深,也算有結果了,達到目的了。也即用java程序可以調用matlab中函數了。

    按順序說吧,最開始肯定是下個matlab看看。下哪一個呢。開始下一個7.0覺得很新了。后來才覺得不是,現在都有7.8了。同時網上還流傳著另外一種版本號信息,即2006版、 2006a版、2008b版,后來從網上找資料才知道,原來,matlab是一年兩版的,叫a版和b 版。比如MATLAB 7.2 (Release 2006a),我下的是m7.8即2009a版。網上有對應關系,有興趣可以找一下。

    先說明一下,我用java調用matlab用的是matlab人提供的,MABLAB BUILDER JA工具,還要告訴你,這工具2006b版以前是沒有的,我想以前java可能通過JNI通過c來調用matlab的。所以你下載時要注意版本了。還有一點要說明下,如果你用的是AMD的處理器,不是intel的處理器,安裝matlab后,可能不能運行,具體表現是,一打開就關閉了。我公司機器用就是AMD的處理器,解決辦法其實也很簡單,就是給你的機器新建立一個系統變量,變量名是BLAS_VERSION,變量值是D://MATLAB7//bin//win32//atlas_Athlon.dll(你的matlab安裝地址)。

   然后,就是我們學著用MABLAB BUILDER JA了,開始不知道看matlab幫助,只是從網上看別人寫的東西,關于這樣的文章基本上出自一個娘胎,我不明白的地方,都一樣的沒有。后來看到了matlab幫助文檔了,確實興奮了一把,那才是最正宗的。下面我就試著按照它的說明一步一步說一下。

    先來,介紹一下MATLAB® Builder™ JA吧,它是 MATLAB® Compiler™的擴展產品,用它你可以把你的m-code文件包裝起來,并打包到一個多個class文件中,這樣的你的java程序就能用matlab了,其實是這樣的,m-codeiv當然就是你想調用的matlab程序了。

   要說明一點,如果你只是在安裝matlab的機器上,用java調用運行由MATLAB® Builder™ JA生成的jar包,當然可以。

   如果你要在沒有安裝matlab的機器上用java調用這些jar包,怎么辦?也是可以的,不過,不過你要先在機器上安裝matlab提供的MATLAB Compiler Runtime (MCR),它的安裝文件在C:/Program Files/MATLAB/R2009a/toolbox/compiler/deploy/win32下(你的安裝目錄下)文件名MCRInstaller.exe。

   準備工作:

   java環境,JAVA_HOME設置正確。還有一點你jdk版本要是1.6以上的,1.5可能有錯。

   關鍵部分來了,在這部分你可以,通過一個例子,看到一個M-code function轉變成為java可調用組件。

   這個例子的名字叫,magic square,這個例子讓你學會如何,創建一個叫magicsquare 的java組件,它主要包括一個 magic class,和一個jar文件,還有其它上些發布組件用到的文件。magic .class是最關鍵的,就是它包裝了, MATLAB 的函數 makesqr, makesqr函數是計算魔方數組用的,后面我們就是java程序,調用這個函數。

    MATLAB Builder JA,可以通過在matlab命令,deploytool 調出,在這之間,為了驗證matlab已能得到你的java環境了,你可以用,getenv JAVA_HOME來驗證一下,能返回你的JAVA_HOME就是正確的了。

    這個例子的,m代碼和java代碼,matlab都幫我們寫好了。你現在需要做的就是把它的代碼拷貝你的工作空間中,它是例子在

    matlabroot /toolbox/javabuilder/Examples/MagicSquareExample .

   matlabroot就是matlab的安裝目錄。

    拷貝MagicSquareExample這個文件夾到你工作空間, for example, D:/javabuilder_examples

    記得不要有空格。把MagicSquareExample子目錄改名為 magic_square,現在的文件結構應該是 D:/javabuilder_examples/magic_square .沒錯的話。然后把matlab工作空間轉到D:/javabuilder_ examples/magic_square。 最后,要用m-code function我們要先測試它,打開makesqr.m文件,然后在matlab命令行中,輸入 makesqr(5),看看結果是不是

17 24  1  8 15
deploytool 調出 MATLAB Builder JA,它應該是如下這個樣子,

然后你選擇MATLAB BUILDER JA,新建一個工作,點擊Browse按鈕把你的工作放在
D:/javabuilder_examples/magic_square.輸入magicsquare 作為工程名稱。默認工程名字也是
D:/javabuilder_examples/magic_square目錄下的包名。
MATLAB Builder JA 分配classes存放的文件夾名是按工程名稱來設置的,所以在本工作中,Magicsquare 就是作為,calsses存放目錄
名稱了,我們要手動改它名字為,class,直接右擊就可以改了。(這也是我以前看別人文章的,老找不到他們所謂的class文件夾的原因,也沒人說這個問題)
工作建好以后,你可以setting你的工程,matlab的指南上說,讓我們把Generate Verbose Output 選項選上,這樣就能看到出錯信息,實際上它默認是選擇的。
然后,把m文件添加到工程中,在matalb中找到makesqr.m 文件把它,用鼠標拖到工程的magic文件夾下。然后保存工程。
下面就是構建工程,點擊面板上方 按鈕,等待一會,matlab就會你的工程目錄下,創建src 和distrib兩個文件夾。 src目錄中包括有,生成的java文件,magic.class。distrib目錄中包括有java存檔文件,magicsquare.jar。
23  5  7 14 16
 4  6 13 20 22
10 12 19 21  3
11 18 25  2  9
下面就是把m-code函數創建成一個java組件。用剛才說的,

接下來,就是驗證你用matlab builder ja生成的java組件是不是能用的時候了。

先在你的java ide中建立一個java工程,然后把剛才生成的magicsquare.jar,還有,matlabroot/toolbox/javabuilder/jar/javabuilder.jar加入你的java工程構建路徑中去。

然后你把D:/javabuilder_examples/magic_square/MagicDemoJavaApp下的getmagic.java測試文件拷貝到你java工程下,然后直接運行它。具體是怎么調用的,你看一測試代碼就知道了,很easy.

就可以測試了。它是提示你輸入一個數。如輸入5,回車得到

Magic square of order 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
就正確了。


最后補充一點,我在公司機器上運行這個例子時,能出結果,但出結果前,老是報

這個錯,但在我家,自己的機器上就沒有這個錯誤,要說明一點的是,我家自己機器上用的INTEL的cpu,公司用的是AMD的,其它沒什么區別。也不知是什么原因。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av一区二区在线观看| 欧洲成人性视频| 不卡av在线播放| 欧美猛交ⅹxxx乱大交视频| 久久久亚洲天堂| 欧美日韩在线第一页| 中文字幕亚洲欧美一区二区三区| 国产美女精彩久久| 91视频8mav| 国产激情视频一区| 中文字幕亚洲图片| 欧美视频免费在线观看| 亚洲色图18p| 久久精品视频网站| 亚洲自拍另类欧美丝袜| 青青a在线精品免费观看| 亚洲第一区中文99精品| 欧美日韩亚洲一区二区三区| 亚洲午夜未删减在线观看| 国产精品日日摸夜夜添夜夜av| 欧美国产日韩一区二区三区| 夜夜嗨av色综合久久久综合网| 日韩av综合网站| 国产精品一区av| 亚洲女人初尝黑人巨大| 亚洲va久久久噜噜噜| 国产精品欧美在线| 136fldh精品导航福利| 欧美激情女人20p| 亚洲xxxx做受欧美| 人人爽久久涩噜噜噜网站| 亚洲国产欧美一区二区丝袜黑人| 国产91精品最新在线播放| 久久艳片www.17c.com| 国产亚洲一区二区精品| 成人免费观看49www在线观看| 亚洲国模精品私拍| 国产欧美韩国高清| 欧美性猛交xxxx乱大交极品| 精品福利在线视频| 国产精品专区第二| 成人伊人精品色xxxx视频| 欧美成人精品xxx| 精品久久久精品| 亚洲精品日产aⅴ| 亚洲欧美日韩图片| 亚洲最大在线视频| 久久精品99久久香蕉国产色戒| 国产精品88a∨| 欧美影院在线播放| 国产日韩亚洲欧美| 97视频在线观看视频免费视频| 国产精品男人爽免费视频1| 久久电影一区二区| 久久成年人免费电影| 国产美女91呻吟求| 性欧美xxxx| 97在线视频免费播放| 亚洲国产一区二区三区在线观看| 国产丝袜一区二区三区免费视频| 欧美色视频日本高清在线观看| 色噜噜国产精品视频一区二区| 日韩欧美中文在线| 91极品女神在线| 欧洲日韩成人av| 国产精品亚洲第一区| 在线日韩精品视频| 在线日韩中文字幕| 日韩电影免费观看中文字幕| 成人xxxxx| 精品亚洲一区二区三区在线播放| www日韩欧美| 色妞在线综合亚洲欧美| 国产精品99一区| 久久久国产一区二区三区| 亚洲国产精品久久久久秋霞不卡| 亚洲精品美女在线观看| 中文在线不卡视频| 亚洲色图色老头| 国产欧美一区二区三区视频| 国产精品综合网站| 色偷偷88888欧美精品久久久| 国产精品极品美女粉嫩高清在线| 欧美国产日韩一区二区三区| 海角国产乱辈乱精品视频| 欧美成人精品一区二区三区| 国产精品777| 成人做爽爽免费视频| 97免费中文视频在线观看| 亚洲爱爱爱爱爱| 中文字幕久热精品在线视频| 亚洲美女中文字幕| 国产日本欧美一区二区三区在线| 国产精品无码专区在线观看| 在线成人免费网站| 日韩国产高清污视频在线观看| 精品成人69xx.xyz| 日本三级久久久| 色妞一区二区三区| 久久99亚洲精品| 成人网中文字幕| 91九色视频在线| 亚洲人成在线电影| 国产亚洲激情视频在线| 国产在线高清精品| 亚洲精品电影在线观看| 久久精品视频一| 欧美日韩免费区域视频在线观看| 热久久美女精品天天吊色| 色综久久综合桃花网| 两个人的视频www国产精品| 国产精品精品视频一区二区三区| 日韩成人在线播放| 欧美大秀在线观看| 国产成人97精品免费看片| 亚洲三级黄色在线观看| 亚洲xxxx18| 亚洲视频视频在线| 91久久精品日日躁夜夜躁国产| 亚洲视频第一页| 午夜免费在线观看精品视频| 欧美亚洲国产成人精品| 国产精品日日摸夜夜添夜夜av| 亚洲欧美中文在线视频| 国产精品久久综合av爱欲tv| 欧美日韩国产精品一区二区三区四区| 国产精品午夜国产小视频| 欧美诱惑福利视频| 日本一欧美一欧美一亚洲视频| 57pao国产成人免费| 欧美巨猛xxxx猛交黑人97人| 亚洲精品之草原avav久久| 欧美又大又硬又粗bbbbb| 日本精品视频在线播放| 欧美视频中文在线看| 欧美大成色www永久网站婷| 亚洲一区亚洲二区| 少妇精69xxtheporn| 国产精品日韩欧美综合| 亚洲一区二区国产| 麻豆一区二区在线观看| 91老司机精品视频| 久久99久久亚洲国产| 久久久精品999| 中文字幕精品一区久久久久| yellow中文字幕久久| 亚洲护士老师的毛茸茸最新章节| 久久福利视频网| 91免费福利视频| 在线观看不卡av| 色狠狠av一区二区三区香蕉蜜桃| 91影院在线免费观看视频| 亚洲天堂av高清| 91久久综合亚洲鲁鲁五月天| 色妞欧美日韩在线| 欧美一级淫片aaaaaaa视频| 精品亚洲一区二区三区在线播放| 97精品伊人久久久大香线蕉| 中文字幕欧美视频在线| 亚洲欧洲免费视频| 国产成人亚洲综合青青| 亚洲另类xxxx| 主播福利视频一区| 色哟哟网站入口亚洲精品|