2011-08-23 122 views
3

IM完全新手到Java世界,這我第4行代碼,並給它一些錯誤,我無法解決當用javac編譯時,system.out.print不打印任何結果?

public class MyFirstClass 
{ 
    public static void main (String[] args) 
    { 
     int x = 3 ; 
     String name = "Drik"; 
     x = x * 10 ; 
     System.out.println("x is " + x); 
    } 
} 

當我編譯這個代碼用javac其創建的類文件 但它有在屏幕 當我寫命令的輸出來編譯它,它給另一個命令代碼,而無需打印結果

+0

你shuld用「java」命令運行它..你是否這樣做..? – ngesh

+0

@ntc不,我沒有這本書,我曾經學習並沒有表明:) :) – Marco

+0

@Fouad ..然後做.. java MyFirstClass.class – ngesh

回答

3

javac工具讀取類和接口定義,用Java編程語言,並編譯成字節碼類文件。

javac MyFirstClass.java 

要運行的類文件,實際打印你想要的結果,你必須與運行java命令字節碼類像

java MyFirstClass 
+0

,但我沒有閱讀它的錯誤提示錯誤NoClassDefFoundError與.class調用或甚至沒有 – Marco

+0

嘗試像:在命令提示符下1.轉到您的路徑,其中java已經安裝llike:c:\ program files \ java \ jdk1.6 \ bin 2.用javac命令編譯你的類的完整包,例如:c:\ program files \ java \ jdk1.6 \ bin> javac d:\ test \ MyFirstClass 3.然後進入你的類文件位置並執行java:d​​:\ test> java MyFirstClass – Swagatika

+0

它的輸出類放在同一個文件夾中,我把我的應用程序放在這個問題上,我完全是新手,所以我不知道什麼是CLASSPATH,我發現它指向一個名爲QTJava.zip的壓縮文件,完整路徑是C:\ Program Files \ Java \ jre6 \ lib \ ext \ QTJava.zip – Marco

0

javac不會運行該文件,它將編譯MyFirstClass.java文件的字節碼,創建MyFirstClass.class文件。

然後,你可以通過做實際運行程序:

java MyFirstClass 
+0

您通過執行'java MyFirstClass'運行程序.. .class會給你一個noclassdeffounderror。 – Kal

+0

@kal都給出相同的錯誤:) – Marco

+0

@Fouad - 確保您正在運行的類文件位於類路徑中。做這個'java -cp。 MyFirstClass' – Kal

0
  1. 打開CMD
  2. 運行Java的版本 如果你有一個輸出 - 你的java安裝正常。如果不是 - 正確安裝java(安裝jdk,定義JAVA_HOME env。變量+定義路徑環境變量以查看%JAVA_HOME%\ bin)
  3. 移動到* .class文件所在的目錄(確保它是真的那裏:))
  4. 運行以下命令: 的Java MyFirstClass 這應該工作
    如果不是出於某種原因,請嘗試以下操作來代替: java命令。 MyFirstClass

祝你好運!

0

哎可能是有問題與CLASSPATH ..如果您使用的是Windows型在命令提示符(出口在ubunto)它顯示pathvariables的列表中設置,檢查CLASSPATH變量。如果它不指向保存類的目錄,則使用set命令設置其路徑。希望這會起作用。

+0

是的,這是非常有用的,但問題是我必須設置類路徑到相同的應用程序路徑? – Marco

+0

@ Fouad..check其實際保存類文件的位置。設置你的classPath直到該目錄。如果您使用的是軟件包,請將其設置爲具有根包目錄的目錄。 – ngesh

0
  1. 確保已遍歷到文件存在的目錄。
  2. 然後將文件編譯爲javac .java。檢查是否生成了類文件。
  3. 一旦生成,運行它爲java MyFirstClass
  4. 它應該執行程序。
  5. 請檢查環境變量中'JAVA'的類路徑一次。