一個簡單的java問題(在linux下) |
尚未結案
|
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
|
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
|
海星
高階會員 發表:41 回覆:217 積分:106 註冊:2003-01-09 發送簡訊給我 |
請把錯誤訊息打出來,沒錯誤訊息別人沒辦法幫你!!! 是在 javac test.java 編譯過程就有錯誤訊息?
還是執行階段發生的? java test? 其實你的問題我猜是發生在你沒有設定你的環境變數,所以沒辦法執行!!
甚至你根本連 J2SDK 套件都完全沒安裝,如果連 J2SDK 都沒安裝,
請去 java.Sun.com 抓取 J2SDK 套件來安裝. 要是環境變數沒有設定,請設定你的環境變數
以下 JAVA_HOME 變數請視你的真實安裝路徑與版號去修改之. set JAVA_HOME=/usr/java/j2sdk1.4.2_06
export JAVA_HOME
set PATH=$PATH:$JAVA_HOME/bin
export PATH
set CLASSPATH=.:$JAVA_HOME/lib/dt.$JAVA_HOME/lib/tools.jar
export CLASSPATH
|
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言: 請把錯誤訊息打出來,沒錯誤訊息別人沒辦法幫你!!! 是在 javac test.java 編譯過程就有錯誤訊息? 還是執行階段發生的? java test? 其實你的問題我猜是發生在你沒有設定你的環境變數,所以沒辦法執行!! 甚至你根本連 J2SDK 套件都完全沒安裝,如果連 J2SDK 都沒安裝, 請去 java.Sun.com 抓取 J2SDK 套件來安裝. 要是環境變數沒有設定,請設定你的環境變數 以下 JAVA_HOME 變數請視你的真實安裝路徑與版號去修改之. set JAVA_HOME=/usr/java/j2sdk1.4.2_06 export JAVA_HOME set PATH=$PATH:$JAVA_HOME/bin export PATH set CLASSPATH=.:$JAVA_HOME/lib/dt.$JAVA_HOME/lib/tools.jar export CLASSPATH謝謝你 我程式的錯誤訊號如下 test1.java:7: Type `JFrame' not found in the declaration of the local variable `p'. JFrame p=new JFrame(); ^ 1 error 但是.... 我的路徑是如下 [root@localhost p]# echo $JAVA_HOME /usr/java/j2sdk1.4.2_08 還有 [root@localhost p]# echo $CLASSPATH .:/usr/java/j2sdk1.4.2_08/lib/dt./usr/java/j2sdk1.4.2_08/lib/tools.jar 還有 [root@localhost p]# echo $PATH /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/usr/java/j2sdk1.4.2_08/bin 以上是我的環境變數 可以幫幫我嗎 謝謝你 |
海星
高階會員 發表:41 回覆:217 積分:106 註冊:2003-01-09 發送簡訊給我 |
引言: 謝謝你 我程式的錯誤訊號如下 test1.java:7: Type `JFrame' not found in the declaration of the local variable ^^^^^^^^^^^^ `p'. JFrame p=new JFrame(); ^ 1 error奇怪??你的檔名怎麼取 test1.java 然後 class 名稱又取 test ? 這兩個名稱必須要一模一樣才行,你把 class 名稱改成 test1 看看.. 應該就可以編譯過去了. |
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言:對不起 這是我新設的檔名 我知道檔名要和執行時一樣 若檔名為test 執行時為javac test.java(會產生class檔) 然後再執行java test(即可) 但我按照這個方式 就是不行 我也有設定環境路徑了 可以再幫我看一看是不出現什麼問題? 謝謝引言: 謝謝你 我程式的錯誤訊號如下 test1.java:7: Type `JFrame' not found in the declaration of the local variable ^^^^^^^^^^^^ `p'. JFrame p=new JFrame(); ^ 1 error奇怪??你的檔名怎麼取 test1.java 然後 class 名稱又取 test ? 這兩個名稱必須要一模一樣才行,你把 class 名稱改成 test1 看看.. 應該就可以編譯過去了. |
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
看起來你的Compile還是呼叫系統內建的~
執行安裝SDK:
1.chmod 755 j2sdk1.4.x.bin /更改執行權限
2.執行安裝
3.修改PATH檔,編輯.profile檔,在"PATH=/xxx:"後新增"/j2sdk1.4.x/bin/"
4.原系統內建的compile功能不足,會造成編譯上的問題,刪之,原"javac"位置可以在命令列下:
#whereis javac 得知,位置在/usr/bin/javac,刪,則每當在命令列下:
#javac 時,系統會指向剛安裝的程式路徑,這樣子就不會出現一些Super Class not found等訊息出現~~~~
|
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言: 看起來你的Compile還是呼叫系統內建的~ 執行安裝SDK: 1.chmod 755 j2sdk1.4.x.bin /更改執行權限 2.執行安裝 3.修改PATH檔,編輯.profile檔,在"PATH=/xxx:"後新增"/j2sdk1.4.x/bin/" 4.原系統內建的compile功能不足,會造成編譯上的問題,刪之,原"javac"位置可以在命令列下: #whereis javac 得知,位置在/usr/bin/javac,刪,則每當在命令列下: #javac 時,系統會指向剛安裝的程式路徑,這樣子就不會出現一些Super Class not found等訊息出現~~~~2.執行安裝(不懂什麼意思,可以說明白點嗎) 3.修改PATH檔,編輯.profile檔,在"PATH=/xxx:"後新增"/j2sdk1.4.x/bin/"(profile檔在哪裡呢?) 4.原系統內建的compile功能不足,會造成編譯上的問題,刪之,原"javac"位置可以在命令列下: #whereis javac 得知,位置在/usr/bin/javac,刪,則每當在命令列下: #javac 時,系統會指向剛安裝的程式路徑,這樣子就不會出現一些Super Class not found等訊息出現~~~~ 真的很謝謝你的教導 但我從步驟2~步驟4 我都不太了解 可以麻煩你說清楚 謝謝 |
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
引言: 2.執行安裝(不懂什麼意思,可以說明白點嗎) 如果你已安裝新的SDK~此項省略 3.修改PATH檔,編輯.profile檔,在"PATH=/xxx:"後新增"/j2sdk1.4.x/bin/"(profile檔在哪裡呢?) 打vi /etc/profile 即可開啟該系統設定檔~vi是linux的編輯程式~指令請翻書 4.原系統內建的compile功能不足,會造成編譯上的問題,刪之,原"javac"位置可以在命令列下: #whereis javac 得知,位置在/usr/bin/javac,刪,則每當在命令列下: #javac 時,系統會指向剛安裝的程式路徑,這樣子就不會出現一些Super Class not found等訊息出現~~~~ 此項~不知你是哪看不懂~如果是刪除指令不會下~請翻書 真的很謝謝你的教導 但我從步驟2~步驟4 我都不太了解 可以麻煩你說清楚 謝謝 |
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言:還是不行丫 我不會使用 怎麼辦呢?引言: 2.執行安裝(不懂什麼意思,可以說明白點嗎) 如果你已安裝新的SDK~此項省略 3.修改PATH檔,編輯.profile檔,在"PATH=/xxx:"後新增"/j2sdk1.4.x/bin/"(profile檔在哪裡呢?) 打vi /etc/profile 即可開啟該系統設定檔~vi是linux的編輯程式~指令請翻書 4.原系統內建的compile功能不足,會造成編譯上的問題,刪之,原"javac"位置可以在命令列下: #whereis javac 得知,位置在/usr/bin/javac,刪,則每當在命令列下: #javac 時,系統會指向剛安裝的程式路徑,這樣子就不會出現一些Super Class not found等訊息出現~~~~ 此項~不知你是哪看不懂~如果是刪除指令不會下~請翻書 真的很謝謝你的教導 但我從步驟2~步驟4 我都不太了解 可以麻煩你說清楚 謝謝 |
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
標準寫法~如路徑有異,請自行更正之
於linux Command下執行: [root@www root]# jed /etc/profile 開啟後在最下面加入下面幾行: JAVA_HOME=/usr/java/j2sdk1.4.2_04 export JAVA_HOME CLASSPATH=. : $JAVA_HOME/lib/tools.$JAVA_HOME/lib/dt. $JAVA_HOME/jre/lib/rt. $JAVA_HOME/jre/lib/ext/sunjce_provider. $JAVA_HOME/jre/lib/ext/localedata. $JAVA_HOME/jre/lib/ext/ldapsec. $JAVA_HOME/jre/lib/ext/dnsns.jar export CLASSPATH PATH=$JAVA_HOME/bin : $PATH export PATH發表人 - rogan321 於 2005/04/07 00:11:52 |
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言: 標準寫法~如路徑有異,請自行更正之還是不行耶 import javax.swing.*; public class test1 { public static void main(String[] args) { JFrame f=new JFrame(); f.setSize(10,20); f.show(); } } 錯誤訊息如下 [root@localhost p]# javac test1.java test1.java:7: Type `JFrame' not found in the declaration of the local variable `f'. JFrame f=new JFrame(); ^ 1 error 求求大家 幫我個忙好嗎 謝謝於linux Command下執行: [root@www root]# jed /etc/profile 開啟後在最下面加入下面幾行: JAVA_HOME=/usr/java/j2sdk1.4.2_04 export JAVA_HOME CLASSPATH=. : $JAVA_HOME/lib/tools.$JAVA_HOME/lib/dt. $JAVA_HOME/jre/lib/rt. $JAVA_HOME/jre/lib/ext/sunjce_provider. $JAVA_HOME/jre/lib/ext/localedata. $JAVA_HOME/jre/lib/ext/ldapsec. $JAVA_HOME/jre/lib/ext/dnsns.jar export CLASSPATH PATH=$JAVA_HOME/bin : $PATH export PATH發表人 - rogan321 於 2005/04/07 00:11:52 |
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言: 標準寫法~如路徑有異,請自行更正之[quote] 標準寫法~如路徑有異,請自行更正之於linux Command下執行: [root@www root]# jed /etc/profile 開啟後在最下面加入下面幾行: JAVA_HOME=/usr/java/j2sdk1.4.2_04 export JAVA_HOME CLASSPATH=. : $JAVA_HOME/lib/tools.$JAVA_HOME/lib/dt. $JAVA_HOME/jre/lib/rt. $JAVA_HOME/jre/lib/ext/sunjce_provider. $JAVA_HOME/jre/lib/ext/localedata. $JAVA_HOME/jre/lib/ext/ldapsec. $JAVA_HOME/jre/lib/ext/dnsns.jar export CLASSPATH PATH=$JAVA_HOME/bin : $PATH export PATH發表人 - rogan321 於 2005/04/07 00:11:52 於linux Command下執行: [root@www root]# jed /etc/profile 開啟後在最下面加入下面幾行: JAVA_HOME=/usr/java/j2sdk1.4.2_04 export JAVA_HOME CLASSPATH=. : $JAVA_HOME/lib/tools.$JAVA_HOME/lib/dt. $JAVA_HOME/jre/lib/rt. $JAVA_HOME/jre/lib/ext/sunjce_provider. $JAVA_HOME/jre/lib/ext/localedata. $JAVA_HOME/jre/lib/ext/ldapsec. $JAVA_HOME/jre/lib/ext/dnsns.jar export CLASSPATH PATH=$JAVA_HOME/bin : $PATH export PATHimport javax.swing.*; public class test1 { public static void main(String[] args) { JFrame f=new JFrame(); f.setSize(10,20); f.show(); } } 錯誤訊息如下 [root@localhost p]# javac test1.java test1.java:7: Type `JFrame' not found in the declaration of the local variable `f'. JFrame f=new JFrame(); ^ 1 error 求求大家 幫我個忙好嗎 謝謝 發表人 - vickykp 於 2005/04/07 22:57:44 |
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
提供你幾個方向,
檢查JAVA版本~ ]# java -version ]# which java 指定JAVAC執行目錄~ ]# /usr/java/j2sdk1.4.2_01/bin/javac -classpath /usr/java/j2sdk1.4.2_01 test.java p.s 還有應該有出現類似下方的訊息吧~若有錯誤訊息煩請POST詳細些也方便討論 Can't find default package javax.swing. Check the CLASSPATH environment variable and the access to the archives.... 如果版本的問題~就依上敘幾篇回答的方式修正之 ~最後,請告訴我你解決的情形~~ |
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言: 提供你幾個方向,我的程式是放在/root/p中 [root@localhost p]# java -version java version "1.3.1" jdkgcj 0.2.3 (http://www.arklinux.org/projects/jdkgcj) gcj (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5) Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [root@localhost p]# which java /usr/bin/java [root@localhost p]# /usr/java/j2sdk1.4.2_08/bin/javac test1.java [root@localhost p]# /usr/java/j2sdk1.4.2_08/bin/java test1 這是我解決的方法 但這樣不是很麻煩嗎 每次都要[root@localhost p]# /usr/java/j2sdk1.4.2_08/bin/javac 檔名.java 可以請問用什麼方法呢 謝謝檢查JAVA版本~ ]# java -version ]# which java 指定JAVAC執行目錄~ ]# /usr/java/j2sdk1.4.2_01/bin/javac -classpath /usr/java/j2sdk1.4.2_01 test.java p.s 還有應該有出現類似下方的訊息吧~若有錯誤訊息煩請POST詳細些也方便討論 Can't find default package javax.swing. Check the CLASSPATH environment variable and the access to the archives.... 如果版本的問題~就依上敘幾篇回答的方式修正之 ~最後,請告訴我你解決的情形~~ |
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
|
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
引言: 同學~ 到現在,問題的根源你也找出來了~ 那你覺得應該怎麼做~可以怎麼做? 前面的回覆即有說到此情形~~自己想想吧~你好 我利用mv /usr/java/j2sdk1.4.2_08/bin/javac /usr/bin/javac 將舊的資料改換了 但還是不能使用新的javac耶 [root@localhost mcmis]# javac tes1.java Error: could not find libjava.so Error: could not find Java 2 Runtime Environment. 我想要更改路徑 把原本的路徑(/usr/bin/javac)改為(/usr/java/j2sdk1.4.2_08/bin/javac) 但我找不到指令..... 可以教教我嗎 謝謝 |
rogan321
高階會員 發表:21 回覆:307 積分:200 註冊:2003-05-15 發送簡訊給我 |
|
vickykp
一般會員 發表:4 回覆:11 積分:3 註冊:2005-04-03 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |