java 調(diào)用C++編寫的dll,可使用JNI 或 Jawin 開源項目(推薦第二種方法)。C++ 調(diào)用java 的變量、方法,通過JNI (Java Native Interface)與java類交互。

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站設計、做網(wǎng)站與策劃設計,防城港網(wǎng)站建設哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設十多年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:防城港等地區(qū)。防城港做網(wǎng)站價格咨詢:18982081108
在執(zhí)行java的時候,要輸入完整的包名+類名。否則在以后的測試調(diào)用過程中會發(fā)生java.lang.UnsatisfiedLinkError這個異常。錯誤的詳細信息。CLASSPATH、PATH。
圖1是Sun站點上對JNI的基本結(jié)構(gòu)的描述。如何在C/C++中調(diào)用Java 三聯(lián) 本文將介紹如何在C/C++中調(diào)用Java方法,并結(jié)合可能涉及到的問題介紹整個開發(fā)的步驟及可能碰到的難題和解決方法。
貌似不好辦。不過,你可以將字符串數(shù)組構(gòu)造成一個長字符串,比如說用~r~n作為分隔符,然后再解析。
JNIEnv類型代表Java環(huán)境。通過這個JNIEnv*指針,就可以對Java端的代碼進行操作。如,創(chuàng)建Java類得對象,調(diào)用Java對象的方法,獲取Java對象的屬性等。
C語言調(diào)用Java,還有Java調(diào)用C,都使用到JNI技術,C語言調(diào)用需要創(chuàng)建Java虛擬機,可查看函數(shù)JNI_CreateJavaVM、DestroyJavaVM的資料,函數(shù)聲明在jni.h頭文件(JDK)中。
Java端可以做成網(wǎng)絡服務,方法就很多了,可以是RESTful形式、基于SOAP的WebService、或者用Netty等。C/C++端可以通過開源庫libcurl調(diào)用RESTful形式的接口、可以通過gSoap調(diào)用基于SOAP的WebService接口。
JNIEnv類型代表Java環(huán)境。通過這個JNIEnv*指針,就可以對Java端的代碼進行操作。如,創(chuàng)建Java類得對象,調(diào)用Java對象的方法,獲取Java對象的屬性等。
從java里調(diào)用c等其他語言的,是jni 從c等語言調(diào)用java的,要看你調(diào)用什么了,比如如果是java swing程序,可以用exe4j把它生成exe文件,用c去調(diào)用exe。
如果命令行可以解決的問題,都不算問題。比如你可以在c語言中調(diào)用system(java -jar xxx.jar)當然,這種方法很坑爹。需要用文件或者網(wǎng)絡來實現(xiàn)數(shù)據(jù)的傳輸和交換的介質(zhì)。
如果是PC機一類的 直接調(diào)用java的方法是不現(xiàn)實的 但是可以調(diào)用java程序 比如用system的方式。如果是安卓 可以使用jni的相關接口 查找方法 并調(diào)用。
比如你可以在c語言中調(diào)用system(java -jar xxx.jar)當然,這種方法很坑爹。需要用文件或者網(wǎng)絡來實現(xiàn)數(shù)據(jù)的傳輸和交換的介質(zhì)。
C語言調(diào)用Java,還有Java調(diào)用C,都使用到JNI技術,C語言調(diào)用需要創(chuàng)建Java虛擬機,可查看函數(shù)JNI_CreateJavaVM、DestroyJavaVM的資料,函數(shù)聲明在jni.h頭文件(JDK)中。
Java端可以做成網(wǎng)絡服務,方法就很多了,可以是RESTful形式、基于SOAP的WebService、或者用Netty等。C/C++端可以通過開源庫libcurl調(diào)用RESTful形式的接口、可以通過gSoap調(diào)用基于SOAP的WebService接口。
操作系統(tǒng)裝入jvm是通過jdk中java.exe來完成,通過下面4步來完成jvm環(huán)境.創(chuàng)建jvm裝載環(huán)境和配置 裝載jvm.dll 初始化jvm.dll并掛界到JNIENV(JNI調(diào)用接口)實例 調(diào)用JNIEnv實例裝載并處理class類。
網(wǎng)頁題目:c調(diào)用java代碼 java調(diào)用c函數(shù)
當前鏈接:http://chinadenli.net/article20/dshhjjo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、商城網(wǎng)站、企業(yè)建站、電子商務、網(wǎng)站收錄、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)