jdk動態編譯場景
① 關於自己編譯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++, 相信你是買錯書了
② JDK的編譯命令是什麼如果編譯程序顯示下圖所示錯誤,通常是什麼原因
JDK的編譯命令是java。
一般都是通過IDE(如Eclipse、Intellij Idea,MyEclipse)來開發,調試java項目,但作為學習Java初學者,應從使用JDK命令行編譯、運行Java程序開始。
如果編譯程序顯示下圖所示錯誤,通常是什麼原因?由於未上傳圖片,無法分辨原因。
③ Java在dos環境怎樣編譯程序
在 Windows/DOS 環境下編譯 Java 程序,可以按照以下步驟操作:
首先確保歷燃清已經安裝了 JDK。可以在命令行中輸入 java -version 檢查是否已經安裝了 JDK,並查看 JDK 的版本信肢前息。
編寫 Java 程序並保存為 .java 文件。
打開命令行窗口(如 cmd),使用 cd 命令切換到 Java 程序所在的目錄。
使用 javac 命令編譯 Java 程序,例如:
javac HelloWorld.java如果編譯成功,將會生成一個名為 HelloWorld.class 的文件。
使用 java 命令運行 Java 程序,例如:
java HelloWorld運行結果將會在命令行窗口中顯示出來。
需要注意的是,Java 程序中使用的路徑分隔符應該是 /,而不是 Windows 下的 。例如,如果要引用當段簡前目錄下的 myfile.txt 文件,應該使用 ./myfile.txt,而不是 .myfile.txt。
④ 怎麼編譯並調試 openjdk 源代碼
環境構建需要的工具
1.cygwin 工具。這個工具的主要用處是為了在window平台上模擬出一個unix虛擬環境。
為了能夠在window下編譯openJDK,我們需要手動安裝的工具如下:
Devel:binutils,make.
Interpreters:m4
Utils:cpio,awk,file(我在安裝的過程中,沒找到awk包和file包,可能是版本的問題。)
Archive:zip,unzip
System:procps
以上提供的鍵值對說明:(前面是文件名:包名)
2.安裝編譯器,我選用的編譯器是VS2010,因為這個編譯器中包好了windows SDK v7.0a,否則還要自己去下載這個SDK
(cygwin和vs2010安裝後都會在操作系統的path環境變數中加入自己的bin目錄路徑,必須保證VS2010的bin目錄在 cygwin的bin目錄之前,因為這兩個軟體的bin目錄中各自都有一個連接器「link.exe」,但是只有VS2010中的連接器可以完成 openJDK的編譯)
3.下載一個已經編譯好的JDK。
4.最後一步就是下載一個Apache ANT,JDK中的java代碼部分都是使用ANT腳本進行編譯的,ANT版本要求在1.6.5以上。
5.准備依賴項。
由於OpenJDK中的源碼沒有100%開源,但是在編譯JDK的時候,我們又需要這部分閉源包,官方稱為「JDK plug」。這部分閉源包可以從Source Releases頁面下載。在windows平台下,其是以jar包的形式存在的。通過下面的命令就可以安裝
java -jar jdk-7-ea-plug-b121-windows-i586-09_dec_1010.jar
運行後就會出現提示框,點擊accept接受協議,然後安裝到指定目錄即可。
安裝完成後建立一個環境變數「ALT_BINARY_PLUGS-PATH」,變數值為安裝的JDK plug的安裝路徑,後面編譯的時候需要它
6.安裝一個大於2.3版本的FreeType,這是一個免費的字體渲染庫。JDK的Swing部分和JConsole這類工具要使用到它。安裝好後建立兩個環境變數「ALT_FREETYPE_LIB_PATH」和「ALT_FREETYPE_HEADERS_PATH」,分別指向FreeType安裝目錄下的bin目錄和include目錄。另外還有一點官方文檔沒有提到但必須要做的事情是把FreeType的bin目錄加入到PATH環境變數中。
7.下載Microsoft DirectX 9.0 SDK(Summer 2004),安裝後大約有298MB,在微軟官方網站上搜索一下就可以找到下載地址,它是免費的。安裝後建立環境變數「ALT_DXSDK_PATH」指向DirectX 9.0 SDK的安裝目錄
8.去尋找一個名為「MSVCR100.DLL」的動態鏈接庫,如果讀者在前面安裝了全套的Visual Studio 2010,那這個文件在本機就能找到,否則上網搜索一下也能找到單獨的下載地址,大概有744KB。建立環境變數「ALT_MSVCRNN_DLL_PATH」指向這個文件所在的目錄。如果讀者選擇的是VS2003,這個文件名應當為「MSVCR73.DLL」,應該在很多軟體中都包含有這個文件,如果找不到的話,前面下載的「Bootstrap JDK」的bin目錄中應該也有一個,直接拿來用吧。