java本機編譯
因為你的javac.exe還沒添加到環境變數里。
辦法:用命令行定位到jdk的bin目錄編譯或者把bin目錄添加到環境變數中。
❷ 本地編譯通過,機試編譯錯誤 java
你的 test.java要放到一個子文件夾裡面。比如你的test.java申明屬於package xxx.那麼你要把test.java放到一個叫做xxx的文件夾下面。
編譯的時候,在xxx文件夾上一層,然後運行javac ./xxx/test.java (也就是說不要直接在test.java的目錄下編譯)。
運行的時候,也是在xxx文件夾上一層,然後運行java xxx.test 就應該不會出錯了
.(主目錄,你所有的操作在這里運行)
|
xxx (子文件夾,用來存放所有屬於xxx package的源文件)
|
test.java
❸ 如何在Windows上編譯java程序
1、執行cmd命令javac後,顯示如圖所示編譯成功,說明是java運行正常。

❹ java怎麼本地編譯
第一步,寫代碼並保存為「.java」格式文件。
第二步,確保環境變數設置好:在桌面電腦圖標上點擊右鍵,選著屬性,調出系統,我的win7,路徑-----控制面板\系統和安全\系統,左邊中部高級系統設置,打開系統屬性。xp系統也找系統屬性,有個高級選項,裡面有環境變數按鈕。打開,中下有系統變數,找到path選項,編輯,記得先在最後加個分號「;」。然後找到jdk的安裝目錄,在地址欄里把包括\bin在內的路徑復制到分號後就可以了,然後確定、確定。。。。。。
第三步,打開dos界面並編譯:開始-->運行-->cmd或開始-->附件-->運行-->cmd或windows鍵+R
-->cmd,打開界面。編譯鍵入:javac 路徑\文件名.java,會出現一個同名class文件。對了\的方向挺重要,不行換個方向試試。
第四部,運行也說說吧,鍵入:java 路徑\文件名,文件指的是class文件。
中間出錯修改代碼的話,要重新編譯才能運行。
❺ 如何編譯java程序
三種方法:
1.在IDE中,如eclipse中寫的Java程序,在點擊保存後eclipse就會調用javac編譯程序編譯,編譯文件在當前項目的bin目錄下。
2.作為一個獨立的文件且沒有定義Java環境變數,需要在cmd窗口中切換到java bin目錄下執行Javac程序,執行格式為javac 空格 Java源文件;如 javac C://hello.java;
3.作為一個獨立的文件且定義了Java環境變數,打開cmd窗口,可以在任意目錄輸入javac java源文件,如javac D://hi.java。

(5)java本機編譯擴展閱讀
Java也是一種高級語言,要讓計算機執行你撰寫的Java程序,也得通過編譯程序的編譯。但是Java編譯程序並不直接將Java源代碼編譯為相依於計算機平台的0、1序列,而是將其編譯為位元組碼。
Java源代碼的擴展名為.java,經過編譯程序編譯之後生成擴展名為.class的位元組碼。
❻ 怎樣寫java代碼來編譯運行本地磁碟的一個.java文件
1、確定配置jdk中的bin目錄為環境變數,測試方法:打開cmd,輸入javac,顯示javac相關參數
2、java文件是否有語法問題,如果有,class文件應該是沒有的
3、清空process的輸出流,即
BufferedReader br = new BufferedReader(new InputStreamReader(proc.getInputStream));
try {
String line = null;
while ((line = br.readLine()) != null) {
System.out.println(str + line);
}
br.close();
} catch (IOException e) {
}
❼ JAVA如何編譯成EXE的文件如何實現自編譯(不要虛擬機還可運行)
(1) 使用InstallAnywhere等工具,將應用程序和JRE一起打包,製作一個exe的安裝包。
在安裝過程中,用戶可以選擇使用他機器上的JRE或是這個安裝包內的JRE來運行程序。這是很常見的一種做法,顯得比較專業,而且原來的程序不需要作任何改動,安裝後的程序即在JVM上運行,可以獲得原本的效果。如JBuilder就是這么做的。InstallAnywhere中一個壓縮的JRE大概是8M,它可以針對linux、 win、mac等多個操作系統打包。
(2) 使用JET、gcj等工具,將應用程序製作成一個真正的exe文件。
採用這種方式做成的exe文件可以直接在沒有安裝JRE的計算機上運行。Java類庫全部被編譯成dll,變為本地調用。
JET是收費的(從 http://www.excelsior-usa.com/jetdlevala.html可以下載3.6試用版)。JET安裝好以後,它要把系統上安裝的JDK編譯一下,要等很久。如果JDK是1.4.2_05版還需要打一個補丁。
gcj有windows和Linux版,直接下載zip包,不需要安裝。裡面有不少例子,一些build的批處理文件。從原理來說,gcj自己實現了 JVM規范,當運行用gcj製作的exe(大約2M)時會啟動裡面的一個小型jvm,在上面跑應用程序。不過,gcj目前還不能完整地支持Swing。
但不管怎樣,把Java做成純exe實在是吃力不討好,有很多限制,文件又大。
(3) 使用exe4j製作偽exe文件。
原理:可執行的jar包文件可以通過命令行java -jar jarfile.jar來執行。製作偽exe其實做法一樣,只不過做成exe,調用系統中的java.exe來運行它。
一般情況下,exe4j做成的可執行文件仍需JRE支持,也就是說只能在安裝了JRE的計算機上運行。不過有一種方法可製作偽exe文件,在沒有安裝 JVM的機器上也能運行:雖然exe4j並不提供將JRE打包的功能,但是它提供如何搜索JRE的方法。在第六項設定[JRE]中有一步[Search sequence],添加一個Directory方式的搜索入口,指定是相對目錄「.」 ,然後把JRE目錄中的bin和lib兩個目錄復制到你的發布目錄中就可以了。(當然你可以不用當前目錄「.」,任何當前目錄下的其他目錄也可以,比方 「./JRE」之類的)。此時發布目錄中生成的exe文件就在運行時就會調用當前目錄中的JRE,而不是通過系統注冊表及環境變數尋找JRE了,所以只要把整個發布目錄(含exe及JRE的bin和lib)復制到其他計算機上,也就實現了「目標機即便沒有安裝過JRE也可以執行」。當然,這種發布方式無法得到一個內含JRE的單獨的exe文件。另外,JRE的完整目錄有50M,但是我們的程序只可能調用其中很少的一部分,你可以手動為發布目錄中的JRE減肥、去掉不使用的文件,但這需要一定的經驗。減肥後的JRE根據應用程序的不同,最小可以只有10M左右。
(4) 把java應用程序最後做成applet。
將java applet編入html文件,用瀏覽器方式打開,可以在任何沒有安裝JRE的機器上運行,好比exe文件一樣(當然在安裝了JRE的計算機上也可以用批處理文件或java命令來運行)。Windows IE打開applet靠的是一個叫「micosoft VM」的東西,現在該軟體一般都是自帶的。不過,Windows IE支持的JDK最高版本只能到JDK1.1。如果別人的機器運行不了applet,無非這三個原因:
a. 程序編譯時使用的JDK版本太高,Windows IE不支持。用較老闆版本的編譯器重新編譯(v1.1之前)就可以了。比如在dos下javac -target 1.1 *.jav(強制使用JDK1.1編譯源程序)。
b. 用戶的Windows沒有micosoft vm(這種情況比較少見,只有windows XP第一版等極少數情況)。這種情況下,當客戶的IE每次load applet時候, Windows會提示「沒有download micosoft VM」,他只需從網上下一個就可以了。
c. 用戶計算機上裝有一些保護ie的軟體(比如最新的windows sp2有時就會防止java applet的loading)。暫時關閉保護功能就可以了。
(5) 使用JBuilder、exe4j等工具製作成需要JRE支持的exe文件。
❽ 如何編寫你的第一個Java程序 3種方法來編寫你的第一個Java程序
目錄方法1:編寫你的第一個Java程序1、要開始用Java編寫程序,先設置你的工作環境。2、任何一種類似記事本的程序都能夠用於Java編程。3、確保安裝了Java軟體開發工具包方法2:Hello World 程序1、我們將首先創建一個能列印"Hello World"的程序。2、聲明類和main方法。3、編寫將列印出"Hello World"的代碼行。4、把這些都放在一起。5、保存文件,並打開命令提示符或終端來編譯程序。6、運行程序。7、恭喜,你方法3:輸入和輸出1、我們現在將擴展我們的Hello World程序,以接受用戶的輸入。2、導入Scanner(掃描儀,由於編程時使用Scanner,故下文用Scanner)類。3、在main方法中,創建Scanner對象的一個新實例(instance)。4、提示用戶輸入。5、要求Scanner對象接受用戶鍵入的下一行,並將其存儲在變數中。6、向用戶顯示問候語。7、一起保存以上代碼。8、編譯並運行。Java是James Gosling於1995年創建的一種面向對象的編程語言,它用「欄位」(fields,描述對象的屬性),和「方法」(methods,對象可以執行的操作),將概念表示為「對象」(objects)。Java是一種「編寫一次,就可以在任何地方運行」的編程語言,可以在任何裝有Java虛擬機(JVM)的平台上運行。由於Java是一種用上大量英文單詞的編程語言,母語為英語的初學者很容易學習和理解,非英語母語者只要下一番苦功也能很快上手。本教程介紹如何用Java編寫程序。
方法1:編寫你的第一個Java程序
1、要開始用Java編寫程序,先設置你的工作環境。許多程序員使用集成開發環境(Integrated Development Environment,IDE)進行Java編程,比如Eclipse和NetBeans。但是不必使用臃腫的IDE,也可以編寫Java程序並編譯它。
2、任何一種類似記事本的程序都能夠用於Java編程。高級程序員有時更喜歡使用終端內的文本編輯器,如Vim和Emacs。我們推薦一個可以安裝在基於Windows和Linux系統(Mac、Ubuntu等)的文本編輯器:SublimeText。我們將在本教程中使用它。
3、確保安裝了Java軟體開發工具包。你要用它來編譯程序。在基於Windows的操作系統中,如果環境變數不正確,則可能在運行javac時出錯。有關JDK安裝的詳細信息,可以參閱如何安裝Java軟體開發工具包,以避免此錯誤。
方法2:Hello World 程序
1、我們將首先創建一個能列印"Hello World"的程序。在文本編輯器中,創建一個新文件,並將其另存為"HelloWorld.java"。HelloWorld是類名,你需要讓類名與文件同名。
2、聲明類和main方法。main方法 public static void main(String[] args)是程序運行時執行的方法。這個main方法在每個Java程序中都以相同方式調用。
public class HelloWorld { public static void main(String[] args) { }}
3、編寫將列印出"Hello World"的代碼行。
System.out.println("Hello World.");讓我們看看這一行的組成成分:System 告訴系統執行某些操作。
out 告訴系統我們要輸出一些內容。
println ?代表"列印行(print line)",我們用它告訴系統在輸出中列印一行文字。
("Hello World.") 周圍的圓括弧表示方法 System.out.println()接受一個參數。在本例中,該參數是字元串"Hello World."
注意,Java中有一些我們必須遵守的規則:必須始終在每行末尾添加分號。
Java區分大小寫,因此必須以正確的大小寫寫入方法名、變數名和類名,否則將出現錯誤。
某個方法或循環的特定代碼塊包含在花括弧中。
4、把這些都放在一起。最後Hello World程序應如下所示:
public class HelloWorld { public static void main(String[] args) {System.out.println("Hello World."); }}
5、保存文件,並打開命令提示符或終端來編譯程序。打開保存HelloWorld.java的文件夾,並鍵入javac HelloWorld.java。這告訴Java編譯器你想要編譯HelloWorld.java。如果有錯誤,編譯器會告訴你做錯了什麼。否則,你不應該看到來自編譯器的任何消息。如果現在查看helloworld.java所在的目錄,應該會看到helloworld.class。這是Java用來運行程序的文件。
6、運行程序。我們終於可以運行我們的程序了! 在命令提示符或終端中,鍵入java HelloWorld。這是在告訴Java你想運行HelloWorld類。你應該看到控制台出現 "Hello World"。
7、恭喜,你完成了第一個Java程序!
方法3:輸入和輸出
1、我們現在將擴展我們的Hello World程序,以接受用戶的輸入。在我們的Hello World程序中,我們列印出一個字元串供用戶查看,但是只有當程序能夠接收用戶輸入信息,才能稱之為程序的交互功能。我們現在將擴展程序,提示用戶輸入他或她的名字,然後用名字問候用戶。
2、導入Scanner(掃描儀,由於編程時使用Scanner,故下文用Scanner)類。在Java中,我們有一些可以訪問的內置庫,但是我們必須導入它們。其中一個庫是java.util,它包含我們獲取用戶輸入所需的Scanner對象。為了導入Scanner類,我們在代碼的開頭添加了以下行。
import java.util.Scanner;這告訴程序我們想使用java.util包中的Scanner對象。
如果希望訪問java.util包中的每個對象,只需在代碼的開頭編寫import java.util.*; 即可。
3、在main方法中,創建Scanner對象的一個新實例(instance)。Java是一種面向對象的編程語言,因此它使用對象來表示概念。Scanner對象是含有欄位和方法的對象。為了使用Scanner類,我們必須創建一個新的Scanner對象、它可以填充的欄位和使用的方法。示例如下:
Scanner userInputScanner = new Scanner(System.in);userInputScanner是剛剛創建的Scanner對象實例的名稱。注意名稱是用駱駝體(每個單詞首字母大寫)寫的,這是Java中變數命名的規定。
我們使用 new 運算符創建對象的新實例。因此在本例中,我們通過 new Scanner(System.in),創建了Scanner對象的新實例。
Scanner對象接受一個參數,該參數告訴對象要掃描什麼。在本例中,我們輸入System.in 作為參數。System.in告訴程序掃描來自系統的輸入,這是用戶將在程序中鍵入的輸入。
4、提示用戶輸入。我們必須提示用戶輸入,以便用戶知道何時在控制台中鍵入內容。這可以通過System.out.print或System.out.println實現。
System.out.print("What's your name? ");
5、要求Scanner對象接受用戶鍵入的下一行,並將其存儲在變數中。Scanner將始終接收用戶鍵入的數據。下面的行將要求Scanner接受用戶鍵入的姓名,並將其存儲在變數中:
String userInputName = userInputScanner.nextLine();在Java中,使用對象方法的規定是objectName.methodName(parameters)。在userInputScanner.nextLine()中,我們使用剛才給出的名稱調用Scanner對象,然後調用它的方法nextLine() ,該方法不接受任何參數。
注意,接下來程序將把下一行存儲在一個"字元串"對象中。我們已將字元串對象命名為userInputName
6、向用戶顯示問候語。現在我們已經存儲了用戶名,我們可以列印一個問候語給用戶。還記得我們在main類中編寫的 System.out.println("Hello World."); 嗎? 我們剛剛編寫的所有代碼都應該放在這一行上面。現在我們可以修改這一行,如:
System.out.println("Hello " + userInputName + "!");我們把"hello"、用戶名和"!" 通過編寫 "Hello " + userInputName + "!" 連起來的方式,稱為字元串串聯。
這里我們有三個字元串:"Hello "、userInputName和"!"。Java中的字元串是不可更改的。因此,當我們連接這三個字元串時,我們實際上創建了一個包含問候語的新字元串。
然後將這個新字元串作為參數輸入System.out.println。
7、一起保存以上代碼。我們的代碼現在應該如下所示:
import java.util.Scanner;public class HelloWorld { public static void main(String[] args) {Scanner userInputScanner = new Scanner(System.in);System.out.print("What's your name? ");String userInputName = userInputScanner.nextLine();System.out.println("Hello " + userInputName + "!"); }}
8、編譯並運行。進入命令提示符或終端,並運行與我們在第一次迭代HelloWorld.java時運行的命令。我們必須首先編譯程序:javac helloworld.java。然後我們可以運行它:java HelloWorld。
小提示Java是一種面向對象的編程語言,建議你閱讀更多關於面向對象編程語言的基礎知識,非常有用。
面向對象編程有許多特徵。其中三個主要特徵是:封裝:限制訪問對象某些組件的能力。Java為欄位和方法提供私有(private)、受保護(protected)和公共(public)三種修飾符。
多態:對象可以轉換標識。在Java中,可以將一個對象轉換為另一個對象,以使用另一個對象的方法。
繼承:使用與當前對象位於同一層次結構中的另一個類的欄位和方法的能力。
❾ Java如何編譯執行
ava的一次編譯到處運行是說,編譯好的可執行程序,只要將它放到裝有JVM的機器上就可以運行,你要在你的C,D,F盤的任何目錄下都能javac...,java...哪就要保證這些地方有*.java文件和*.java文件所編譯的*.class文件,你在DOC下只要找到相應的路勁就可以了,當然首先你是按了JVM的
