windows編譯openjdk
① openjdk編譯錯誤
JDK安裝程序會把java.exe,javaw.exe,javareg.exe這3個可執行文件拷貝到winnt\system32目錄下,由於winnt\system32被操作系統預設的設置為最高優先權的PATH搜索路徑,以此保證用戶在命令行任何目錄下可運行java.exe來啟動JVM,可能是你的編程軟體和瀏覽器不兼容造成的。
② 如何交叉編譯openjdk 使之能在arm-linux中運行
直接下載OpenJDK8源碼肯定不通過。有一個專門的移植工程:
hg clone http://hg.openjdk.java.net/aarch64-port/jdk8/
hg clone http://hg.openjdk.java.net/aarch64-port/jdk8u/
這個有時無法下載,使用:
https://github.com/AdoptOpenJDK/openjdk-aarch64-jdk8u
關於OpenJDK的編譯,這個博客記錄最為詳細,所有問題都有解決辦法:
網頁鏈接
③ 關於java的openjdk的問題,拙計啊
openJDK項目在java.net里邊 地址是 http://openjdk.java.net
jdk7的源碼 地址 http://jdk7.java.net/source.html
windows和linux用的源碼不同下載源碼後放在里邊不同的文件夾。
java代碼是公用的在share目錄下。
jdk6的源碼已經關閉了,下載不了了。
④ 關於自己編譯JDK的問題
1 JDK是c/c++寫的, 編譯就是把JDK編譯成可以運行的狀態, 可運行的意思是指可以編譯運行.java文件. 而一般情況下官方下載的JDK都是已經幫你編譯好而已.
2 作者可以用自己編譯的, 也可以用官方編譯好的. 這個要看書中的說明了
3 JDK是c/c++寫的, 裡面和其他c++程序沒什麼區別, windows下面是一堆dll和一堆exe. 你說的.java文件是JDK的功能之一, 幫你編譯java文件成class, JVM是運行class文件的容器
善意提醒:如果你想學java, 而且沒學過c++, 相信你是買錯書了
⑤ 編譯openjdk總是出現這個問題,怎麼解決
編譯openjdk總是出現什麼問題?請把問題貼出來,這樣才好看
⑥ 自己編譯openJDK時,說用到FreeType,FreeType如何安裝怎麼使用
《深入理解java虛擬機》這本書吧,我也在看
安裝過程:
下載http://gnuwin32.sourceforge.net/packages/freetype.htm
解壓,找到freetype-2.3.5-1-depinzlib1.dll
雙擊zlib1.dll , eetype-2.3.5-1-dep 兄弟目錄生成freetype-2.3.5-1-setup
雙擊freetype-2.3.5-1-setup 安裝
⑦ 我為什麼要自己編譯openjdk8以及那些坑
比如說,泰山OFFICE使用JAVA開發,自然要使用JDK。而JDK本身也有BUG,解決又不及時,只能自己動手解決了。相當於定製。
如果要編譯JDK,建議參考本人博客,應該是全網最詳細的,很多問題是全網首發(就是吾第一個發表博文公開解決辦法的)。
⑧ openJDK 編譯的jar包和oracleJDK編譯的能通用嗎
在此,Oracle與OpenJDK之間的區別
他是從組織、開源、市場等角度比較的,我這里主要從開源、前景、相關源碼底層…等等角度分析,有興趣的朋友可以一起來建議,學習
一、前景
這里我只能拋出幾個疑問點,歡迎大家一起來解決,拋出疑問
1、為什麼 Docker 容器的Java環境,幾乎都是 openJdk ?
2、其實ORACLE jdk是開放了大部分源碼的,openJDK是開放所有源碼的,迄今我所想看到的實現,在Oracle JDK中都是開放源碼的,Oracle JDK沒有開放的部分在哪裡?
答:已解決,Oracle JDK 沒有開放的源碼,在openJDK中的實現,這里先說明一下,OracleJDK只開放了不到7%,後面我會摘錄部分,只是部分哈,有興趣可以安裝一個OpenJDK比較一下區別
3、為什麼 OpenJDK開源了 OracleJDK不想開源的東西,
二、開源
open-source,開源,這是一種共享,集智的概念
openJDK 是對外開放源碼的,Oracle JDK則沒有(部分開源)
三、相關底層架構,實現比較
這里就windows版本分析
3.1-1、Oracle JDK架構1
安裝包就一個,如圖,官網地址
在這里插入圖片描述
3.1-2、Open JDK架構1
鏈接地址,在此
如下圖
在這里插入圖片描述
這里比較出 openJDK的JRE和JDK是分開放的
3.2 Oracle JDK 與 Open JDK 目錄結構比較
在這里插入圖片描述
這里看得出 Oracle JDK 是基於 SDK(Jar)進行版本的維護的,部分提供了源碼集
OpenJDK 是基於 package 進行版本維護,提供了所有的源碼集,目錄更清晰,部分實現還變更於與Oracle JDK 不同的包下,後面我摘出部分事例參考
還要注意 IntelliJ IDEA 中也集成了部分的 SDK,注意開發時確保正確的開發環境
3.3 JVM
openJDK已經不顯示 JVM了
在這里插入圖片描述
3.4 不同的命令行操作
在這里插入圖片描述
四、常用對象的不同的實現(OracleJDK源碼在OpenJDK中的不同實現)
摘錄部分,常用對象,這里總結會有點亂(我還沒仔細地觀察真正的源碼區別)
4.1、Object
在這里插入圖片描述
4.2、ArrayLi
⑨ 如何在Windows上面基於Cygwin編譯CppInterpreter版本的Zero OpenJDK
解壓
./configure --with-components=core --with-cups-build=yes
make
make install
安裝後,還是找不到cups庫
於是我在Cygwin設置了LD_LIBRARY_PATH變數,
export LD_LIBRARY_PATH=/cygdrive/d/MyDocuments/VisualStudio/OpenJDK/win32/cups-1.7.5/cups:/cygdrive/d/OthrPromFiles/Cygwin/cygwin32/lib:/cygdrive/d/OthrPromFiles/Cygwin/cygwin32/var/lib
cups-1.7.5/cups目錄下有cups庫:
John@John-PC /cygdrive/d/MyDocuments/VisualStudio/OpenJDK/win32/cups-1.7.5/cups
$ ls
D: api-ppd.shtml custom.o file-private.h http.c libcups2.rc ppd-private.h snprintf.o testoptions.c
Dependencies array-private.h debug-private.h file.c http.h libcups_s.exp ppd.c sspi-private.h testppd.c
Makefile array.c debug.c file.h http.o localize.c ppd.h sspi.c testpwg.c
adminutil.c array.h debug.o file.o ipp-private.h localize.o ppd.o string-private.h testsnmp.c
adminutil.h array.o dest-job.c getdevices.c ipp-support.c mark.c pwg-media.c string.c thread-private.h
adminutil.o attr.c dest-job.o getdevices.o ipp-support.o mark.o pwg-media.o string.o thread.c
api-array.header attr.o dest-localization.c getifaddrs.c ipp.c md5-private.h pwg-private.h tempfile.c thread.o
api-array.shtml auth.c dest-localization.o getifaddrs.o ipp.h md5.c pwg.h tempfile.o transcode.c
api-cups.header auth.o dest-options.c getputfile.c ipp.o md5.o raster-private.h test.ppd transcode.h
api-cups.shtml backchannel.c dest-options.o getputfile.o langprintf.c md5passwd.c raster.h test2.ppd transcode.o
api-filedir.header backchannel.o dest.c globals.c langprintf.o md5passwd.o request.c testadmin.c usersys.c
api-filedir.shtml backend.c dest.o globals.o language-private.h notify.c request.o testarray.c usersys.o
api-filter.header backend.h dir.c http-addr.c language.c notify.o sidechannel.c testconflicts.c utf8demo.txt
api-filter.shtml backend.o dir.h http-addr.o language.h options.c sidechannel.h testcups.c util.c
api-httpipp.header conflicts.c dir.o http-addrlist.c language.o options.o sidechannel.o testfile.c util.o
api-httpipp.shtml conflicts.o emit.c http-addrlist.o libcups.a page.c snmp-private.h testhttp.c versioning.h
api-overview.header cups-private.h emit.o http-private.h libcups.so page.o snmp.c testi18n.c
api-overview.shtml cups.h encode.c http-support.c libcups.so.2 ppd-cache.c snmp.o testipp.c
api-ppd.header custom.c encode.o http-support.o libcups2.def ppd-cache.o snprintf.c testlang.c
John@John-PC /cygdrive/d/MyDocuments/VisualStudio/OpenJDK/win32/cups-1.7.5/cups