2012-07-12 34 views
0

運行我用Java編寫的一個簡單的程序:Java類沒有在OS X

package edu.oakland.lecture; 

public class Alfa { 

    int a; 

    public int getAttribute() { 
     System.out.println("returning value of a"); 
     return a; 
    } 

    public static void main(String []args) { 
     Alfa alfa = new Alfa(); 
     int number = alfa.getAttribute(); 
     System.out.println(number); 
    } 
} 

它編譯與在Windows(XP)和OS X(獅子)的javac,但它只能運行在Windows上。

這是我使用編譯程序的命令:

javac -d bin source/edu/oakland/lecture/Alfa.java

這是我使用來執行它的命令:

java -classpath bin; edu.oakland.lecture.Alfa(I也在終端試圖-cp代替-classpath

正如我所提到的,我在Windows端獲得預期的輸出,但是我在os x端得到這個消息:

-bash: edu.oakland.lecture.Alfa: command not found

我知道它一定是愚蠢的簡單;我忽略了什麼?

謝謝!

回答

5

類UNIX系統(如OS X)上的類路徑分隔符是':',而不是';'。你的命令應該只是

java -classpath bin edu.oakland.lecture.Alfa 

如果你確實確實有幾個不同的組件到類路徑中,它看起來像:

java -classpath bin:foo edu.oakland.lecture.Alfa 
+0

我知道這是simple..thanks這麼多!它看起來像冒號也是完全可選的。 – Anders 2012-07-12 18:47:51

+0

所以在你的編輯'Foo'中會有一個輔助類路徑文件夾是否正確? – Anders 2012-07-12 18:52:46

+0

這是在Sun Java TUtorial – 2012-07-12 18:55:12