[99] LHU 第三章5專案匯入 Eclipse

資管系大二下學期選修課程
授課教授:XO

版主: maa, b80203, ghost3401, XO, kelly19881227

分享到: Facebook

[99] LHU 第三章5專案匯入 Eclipse

文章XO » 週二 10月 12, 2010 12:08 am

在 Eclipse IDE 裡,File --> Import ...

圖檔


之後進入下面這畫面,點選 Browse, 選定課本光碟 sample 資料夾,eclipse 子資料夾底下
CH3 資料夾來選定 Select root directory ... 這時 CH3 底下的 5 個專案現身且預設全部選取 ... 記得要勾選
Copy projects to workspace , 之後 ... 點選 Finish,就可以帶入第三章裡所有專案:

(ㄟ!咱們用的是 eclipse 不是 NetBeans,所以囉... 可別矇著眼睛亂抓一通!)

圖檔

之後可以看見 ...

圖檔

然而 ... 專案前面的紅色叉叉表示匯入的專案有問題,啥問題?... 就到中間下方的 Problem 頁面瞧瞧去:

圖檔

從錯誤訊息 (每組專案各兩個) 可以看到原專案繫結了 jdk1.6.0_13 與咱們課堂上電腦安裝的 jkd 版本不符,這可以...

圖檔

將專案 build path (嗯... 說法不同... 還不就是 classpath ㄇㄟ) 加以修訂... 殺掉對舊版 jdk 的繫結...

圖檔

加入現行 jdk 1.6.0 update 21 ... (or whatever you have...)

圖檔

圖檔

調整後...看到 JRE System Library [jdk1.6.0_21],前面的叉燒包不見了,後面的的 (unbound) 也消失了...

圖檔

在上述畫面按下 OK 後,居然出現問題,抱怨 BookmarkOnline 專案 .classpath 這個設定檔是「唯讀」 無法寫入剛剛
的變更設定... 嗯!這在教室裡,也有同學遇上,當時我還以為是同學在 import 專案時,Copy projects to workspace
這個選項忘了勾上,導致直接在光碟裡的專案資料夾工作,以致無法寫入!看來還有另外的問題。
(按:老師前此把課本 CD 拷貝到 USB 碟,再從那而拷貝到學校老師那顆硬碟。我是從那裡 import 專案的,也許之前我曾經
做過設定,把拷貝到硬碟的 CDROM 資料夾的「唯讀」設定取消。)

圖檔

要設定將資料夾的「唯讀」取消,可以 ...

圖檔

專案資料夾內容「唯讀」取消之後... 再把前面 Build Path 設定修改重做一遍即可。

從下圖裡可以看到修正 build path 後,專案 BookmarkOnline 前的叉燒包錯誤換成了驚嘆號警告。如法對其他專案也泡製一翻...
所有專案的錯誤解決後,剩下來還有諸多驚嘆號 (!) 警告 (Warning) 的問題,這些問題一樣可以經由 Problem 頁面來觀察他
們的細節,看他們都在警告些啥!

專案 BookmarkOnline 為例... Problem 頁 不但告知錯誤為啥,還指出程式以及所在位置的行號,這些都是 Java 問題
照說大夥兒 Java 飛行時數也不少了... 是不是該有能力,循線研究解決? ^o^ (Well, ... 其中有一個是 HTML 問題。)

這裡雖然有8個警告訊息,實則只有下列四個不同的警告訊息:
  1. List is a raw type. References to generic type List<E> should be parameterized.
  2. The serializable class AddBookmark does not declare a static final serialVersionUID field of type long
  3. Type safety. The expression of type Iterator needs unchecked conversion to conform to Iterator<String>
  4. Undefined attribute value (true)
大夥兒要不要試著找出這些警告都是在警告啥?該怎麼解決?

圖檔

嗯!下禮拜上課小考 這麼進行好了分兩階段:
  1. 筆試就考上面這四個警告你怎麼解決的,時間 9:10 - 9:20AM。(同學要守時,考卷收回沒交的該次就算曠課。)
  2. 第二階段,開啟 eclipse,裡面 show 給我看第三章5個專案全部 import 進來,叉燒包警告問題全部解決了。
    (這個不知道會拖到啥時候,也許我會有權宜之計,採抽檢方式,或 ... ),咱們且走且瞧唄。

這個小考的目的在驗收你,會不會啟動 eclipse,在裡面妥當設定/使用咱們安裝的 Tomcat 6.0.18。能夠把別處 import 進來
使用不同 jdk 環境的舊專案,搞定成使用目前的工具版本。

其實... 我還是建議同學...
  1. 把 CH2 的 FirstServlet 專案直接手工打造一個 Tomcat 專案資料夾,佈署到 Tomcat (放哪兒呀?)。這裡面包括
    1. 按 Tomcat 專案資料夾架構建置一個 FirstServlet 資料夾
    2. 手動下指令編譯 Servlet
    3. 建立部署描述檔 web.xml
    4. 將專案部署到 Tomcat Server 裡去,然後瀏覽該 Servlet
    5. 之後從 Tomcat 移除 FirstServlet 應用程式,改下指令將 FirstServlet 應用程式打包成 WAR,再一次部署。
  2. 透過 eclipse 把 CH2 第二個範例,講 MVC model2 那鍋 SimpleModel2 專案建置並跑起來。
    圖檔


這些都搞定後,再來作這 CH3 五個專案的 import,這樣才有意義。期中考可是快要到囉!
最後由 XO 於 週五 10月 15, 2010 7:58 pm 編輯,總共編輯了 10 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 4836
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[99] LHU 第三章5專案匯入 Eclipse

文章XO » 週二 10月 12, 2010 2:46 pm

The serializable class AddBookmark does not declare a static final serialVersionUID field of type long

這問題上課我教了大家一個在 Windows --> Preferences ... 如下視窗內把這個 Warning 改成 Ignore (忽略):

圖檔

忽略它其實是在迴避問題,真的還是要探討一下 serialVersionUID 是作啥用的比較好,這可參閱:

Re:[97] 這禮拜來玩個 Ajax Framework
最後由 XO 於 週三 10月 13, 2010 12:15 am 編輯,總共編輯了 1 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 4836
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[99] LHU 第三章5專案匯入 Eclipse

文章XO » 週二 10月 12, 2010 8:24 pm

接著來看看 Eclipse 的 Quick Fix (按 Ctrl-1) 機制可以協助我們些甚麼?

在 Warning 訊息上 Double click, Eclipse 正中央最主要的工作區會主動調出出問題所在程式,並且
直接跳到有問題處的那一行:

圖檔

滑鼠游標在出問題處(就是文字下方有鋸齒狀底線的地方)稍事停留一下,中央處編輯區就會出現下面這個
Quick fix (快速修復) 建議...

圖檔

接下來... 接下來 .... 你說呢? ^o^
最後由 XO 於 週五 10月 15, 2010 3:59 pm 編輯,總共編輯了 1 次。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 4836
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[99] LHU 第三章5專案匯入 Eclipse

文章qaz25486 » 週四 10月 14, 2010 1:04 pm

老師!!!為什麼在Eclipse啟動Server 出現找不到jre!!! 該怎麼辦 是否路徑要重設!?
qaz25486
剛學走路的小朋友
 
文章: 1
註冊時間: 週三 9月 15, 2010 11:36 pm

Re:[99] LHU 第三章5專案匯入 Eclipse

文章XO » 週四 10月 14, 2010 6:05 pm

看看這一篇有沒幫助:

[97] 今天2/19上課的Web開發環境架設步驟!

這是兩年前舊文章,軟體版本略有不同,概念是一樣的...
那個 tomcat-6.0.16-preconfigured.zip 與咱們課本光碟提供的 apache-tomcat-6.0.18.zip,除了版本
差異外,那郭 preconfigured 也是有把 Tomcat 設定做了一些小調整,例如: 把 Port 由預設的 8080 改成 80、... etc.

還是可以參考看看!

第一次進入 eclipse 的時候,一般是需要透過 Windows -> Preferences 到 Java 與 Server 的 Runtime 設定裡,去
告訴 eclipse 你的 JDK 與 Tomcat 裝在哪兒的啦!
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 4836
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[99] LHU 第三章5專案匯入 Eclipse

文章XO » 週五 10月 15, 2010 4:52 pm

從別的地方要把 eclipse 專案匯入,原使用設定採 jdk1.6.0-13 要改成咱們現在的 1.6.0_21,除了上述
GUI 方式操作以外,也可以用編輯器去改變 eclipse 專案裡的設定檔 .classpath ...

圖檔

圖檔

圖檔

之後,這專案的兩項錯誤就會從 Problem 頁面消失,而且專案前的叉燒包也會消失...
變成驚嘆號(降成為警告級,這是因為專案裡還有其他問題待解決)!
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 4836
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[99] LHU 第三章5專案匯入 Eclipse

文章XO » 週五 10月 15, 2010 5:09 pm

另外我也發現樓上這改法,還不如:

圖檔

圖檔

這樣以後 JDK 變更,也就不用一個個專案掉出來改囉!只要 eclipse 裡設定更改後,就全部一體適用囉!
我猜 (沒去試ㄇㄟ) Tomcat Server 應該也可以如法炮製一番...

務必記得要 Refresh / F5 將檔案系統所做的內容改變讓 Eclipse 知道。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 4836
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

Re:[99] LHU 第三章5專案匯入 Eclipse

文章D964243048 » 週五 10月 15, 2010 5:52 pm

和同學一起用了很久,由同學發現...要增加以下步驟

圖檔

File~import~General~Existing...~next~Browse~選擇匯入檔案。

介面跟老師不太一樣,匯入的步驟.
附加檔案
1015.JPG
(37.62 KiB) 被下載 2 次
D964243048
剛學走路的小朋友
 
文章: 2
註冊時間: 週日 9月 19, 2010 10:37 pm
來自: 桃園

Re:[99] LHU 第三章5專案匯入 Eclipse

文章XO » 週五 10月 15, 2010 7:54 pm

D964243048 寫:File~import~General~Existing...~next~Browse~選擇匯入檔案。

介面跟老師不太一樣,匯入的步驟.


嗯!你說得對...

File -> Import 到出現頂樓那個可以點選 Browse 按鈕的畫面。中間還要補上
你說的這個步驟 Select an import source ... 我遺漏了! 我待會兒回頭去補正! ^o^
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 4836
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.


回到 Web程式設計

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 0 位訪客