以apt-get安裝了
sun-java6-jdk,
sun-java6-jre,
sun-java6-fonts,
sun-java6-plugin
安裝完後進入http://java.com/zh_TW/download/help/testvm.xml測試java-plugin
結果是可以使用的
接下來要測試javac是否可以使用,結果就不行了, 不過同樣的程式在windows下就可以編譯成功
我將下列的程式碼書入並存為HelloWorld.java
- 代碼: 選擇全部
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("hello world in linux");
}
}
在console下用javac編譯, 產生了下列的錯誤訊息
- 代碼: 選擇全部
NukeLab:~/java# javac HelloWorld.java
----------
1. ERROR in HelloWorld.java (at line 1)
public class HelloWorld
^
The type java.lang.Object cannot be resolved. It is indirectly referenced from required .class files
----------
2. ERROR in HelloWorld.java (at line 1)
public class HelloWorld
^
The type java.lang.String cannot be resolved. It is indirectly referenced from required .class files
----------
3. ERROR in HelloWorld.java (at line 1)
public class HelloWorld
^^^^^^^^^^
Implicit super constructor Object() is undefined for default constructor. Must define an explicit constructor
----------
4. ERROR in HelloWorld.java (at line 5)
public static void main(String[] args)
^^^^^^
String cannot be resolved to a type
----------
5. ERROR in HelloWorld.java (at line 9)
System.out.println("hello world in linux");
^^^^^^
System cannot be resolved
----------
5 problems (5 errors)NukeLab:~/java#
後來我在.bashrc下加上下列幾行
- 代碼: 選擇全部
export J2REDIR=/usr/lib/jvm/java-6-sun
export PATH=$PATH:$J2REDIR/bin
export MANPATH=$MANPATH:$J2REDIR/man
export CLASSPATH=$CLASSPATH:$J2REDIR/lib:$J2REDIR/lib/dt.jar:$J2REDIR/lib/tools.jar:$J2REDIR/lib/mysql_connector.jar
export JRE_HOME=$J2REDIR/jre
再編譯一次, 結果也是一樣
我想在windows下可以編譯的程式, 在linux下卻沒辦法可能是
1. 路逕設定錯誤,所以找不到該有的函式庫, 不知道以apt-get直接安裝的java-jdk要如何去設定路徑?
2. java程式拿到linux下編譯, 是否在開頭需要import其它的東西?
3. 我是否要暫停使用unstable的java套件, 或許這個編譯好的套件還有一些問題,
也許回去用java-package把sun的bin檔安裝來用會比較實際.
煩請版上的高手為我解惑, 謝謝各位.