日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

java 内嵌chrome_[Java教程]Jcef内嵌浏览器windows版本的编译及使用

發布時間:2023/12/20 windows 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 内嵌chrome_[Java教程]Jcef内嵌浏览器windows版本的编译及使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

[Java教程]Jcef內嵌瀏覽器windows版本的編譯及使用

0 2017-04-17 12:00:15

背景

去年年底接到的新需求,需要將原來用Swing做的桌面應用中的一個功能做成Web版的,并且要集成到原應用中,換言之就是要使用內嵌瀏覽器。最開始考慮的是JavaFx提供的WebView,優點是不需要其他第三方庫,jdk1.7開始集成。但是開發完成之后發現兩個比較嚴重的問題,一是界面有一個比較復雜的曲線圖會嚴重卡頓,另一個是有幾率會導致虛擬機崩潰,并且速度上也不是很讓人滿意。最后只能考慮換一個內嵌瀏覽器框架,然后就找到jcef,基于chrome,速度兼容性都很好。

關于jcef就不多作介紹,不了解的可以戳這里java-cef,本文主要講解jcef的編譯過程,由于產品只支持windows平臺使用的是32位的jre,所以只編了win32的版本,64位編譯過程基本相同,只需要改變下參數。

編譯環境CMake?2.8.12.2或者更新的版本(我用的免裝版,bin目錄要手動配置環境變量)

Git

Visual Studio 2015(官網推薦2015,原因是開發者使用的就是2015版本,實測VS2010和VS2013編譯均會報錯)

Java 1.8 32位 (官網寫的是1.7或者1.8,實際上使用1.7編譯java部分會有語法錯誤,可以修改源碼規避,建議使用1.8,編譯64位版本使用64位的jdk)

Python 2.6或者更新的版本(不支持Python3)

編譯過程

1. 源碼下載

使用Git將下載jcef源碼,clone地址:https://bitbucket.org/chromiumembedded/java-cef.git,當然也可以直接下載Jcef源碼。這里建議使用Git Clone,因為在使用CMake構建的時候需要用到.git目錄下面的文件中當前節點的信息來構建jcef_version.h頭文件,如果不是git clone的代碼,沒有git相關的文件編譯會出錯,這個應該是可以通過修改編譯腳本規避,把通過git文件獲取的信息寫死,沒有試過,不細表。

2. CMake構建VS工程

在源碼目錄下創建新目錄jcef_build(不可隨意命名),打開DOS進入到新目錄中,輸入命令cmake -G "Visual Studio 14 2015" ..,回車開始構建。此處有坑,我編的時候新裝的VS2015這里報錯,找不到編譯器,研究了老半天最后找到一句話,VS2015默認安裝不包含C++支持……當時整個人都不好了。如果要編64位的話命 令換成這樣:cmake -G "Visual Studio 14 Win64" .. 。這里還有一個注意的地方是,這個過程會自動去下載當前Jcef對應的CEF的版本,若果下載不成功可以自己下載之后放到/java-cef/third_party/cef目錄中。CEF版本號可以從源碼目錄下的CMakeLists.txt文件中找到。

CEF下載地址:http://opensource.spotify.com/cefbuilds/index.html ?(經常打不開,我FQ才能穩定打開)

CMake構建后的C++項目:

3. VS構建

使用VS打開jcef_build中的jcef.sln文件,選擇"生成-->配置管理器-->修改為Release和Win32",然后選擇"生成-->生成解決方案",然后等待構建完成。

4. 編譯java代碼

使用dos進入到源碼目錄的tools目錄里,執行命令compile.bat win32

5. 測試運行

同樣是tools目錄,執行run.bat win32 Release simple或者run.bat win32 Release?detailed,瀏覽器正常運行,編譯成功。

6. 打包

tools目錄下執行?make_distrib.bat win32,源碼目錄下會自動創建打包目錄binary_distrib,里面包含了api文檔,瀏覽器Demo,使用到的jar和dll以及資源文件。

使用方法

需要用到的jar: \java-cef\binary_disrib\win32\bin里面的相關jar包

動態庫以及資源文件等:\java-cef\binary_disrib\win32\bin\lib\win32里面的所以內容

編碼時導入jcef即可編譯成功,運行時classpath指定上述jar包,將上面的dll等文件win32目錄下的所以內容放在一個目錄中,然后將其指定為-Djava.library.path的值即可,可以參考\java-cef\binary_distrib\win32里面的run.bat。

一鍵編譯腳本

build_jcef.bat win32一鍵編譯,腳本是按照可編譯64位寫的,參數用win64就行了,不過筆者沒試過......

@echo on@rem 設置路徑set SRC_PATH=D:\java-cefset VS_PATH=C:\Develop\VS2015if "%1" == "" (echo ERROR: Please specify a target platform: win32 or win64set ERRORLEVEL=1goto end)cd /d %SRC_PATH%mkdir %SRC_PATH%\jcef_buildcd /d %SRC_PATH%\jcef_build@rem CMake構建cmake -G "Visual Studio 14 2015" ..@rem VS編譯@echo VS Building Start%VS_PATH%\Common7\IDE\devenv.exe %SRC_PATH%\jcef_build\jcef.sln /rebuild "Release|%1"@echo VS Building End@rem 編譯java部分cd /d %SRC_PATH%\tools call compile.bat %1@rem 打包call make_distrib.bat %1:endExit /B

View Code

結語

從編譯到開發,以及解決各種bug,jcef的資料太少,走過不少彎路。不過項目總算是順利完成交付,這里做個筆記,也分享給需要的人,希望能有所幫助。

本文網址:http://www.shaoqun.com/a/307261.html

*特別聲明:以上內容來自于網絡收集,著作權屬原作者所有,如有侵權,請聯系我們:admin@shaoqun.com。

Windows

0

總結

以上是生活随笔為你收集整理的java 内嵌chrome_[Java教程]Jcef内嵌浏览器windows版本的编译及使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。