
除了將問題回報給官方、等待下一次的發行有提供修正外,著手修改源碼也是許多Sakai參與團體選擇的方式。像Sakai這種規模較複雜的開放源碼軟體,即便軟體取得成本為零,但導入時必須考慮各項需求的客製、支援成本,許多時候還必須花費高額的顧問費用,才有機會讓資訊系統正式上線,總成本不見得亞於商業軟體,許多時候甚至高出許多,所以採用Sakai作為校園的教學系統,不能把成本當作主要的考量,擁有完整原始碼與修改權力,才是導入開源軟體的價值所在。
開發及修改Sakai的程式,需要投入足夠的專業人力,即使Sakai是使用Java開發,而國內使用Java的技術人員也很多,但是Sakai採用許多輕量(lightweight)元件組成的架構,開發人員不僅需要熟悉Java程式語言、JSP動態網頁的基礎,還必須瞭解Spring framework、JSF、Hibernate…等技術的運用,甚至在編譯佈署用的Maven也比一般常用的Ant進階許多。
Sakai官方目前已經提供相關開發文件:
同時也提供以下Step by Step的教學影片(MOV格式):
- Developing for Sakai, Part I: Getting Started (Z. Thomas, Aeroplane Software)
- Developing for Sakai, Part II, Setting Up Eclipse (Z. Thomas, Aeroplane Software)
- Developing for Sakai part III: App Builder Plugin (Z. Thomas, Aeroplane Software)
- Eclipse 101 - Basics, Tips & Tricks (L. Speelmon, Indiana University)
在環境變數的設定,必須注意Java參數中的記憶體調校(Xms、Xmx、XX:MaxPermSize),記憶體的設定需要參考機器的實際記憶體容量,預設的設定很容易在運作一段時間後就發生OutOfMemory(記憶體不足)的問題,需要調整到合適的設定(例如機器擁有2GB+的記憶體,則可以將上限設為1024MB)。
按照文件的說明,直到啟動Eclipse為止,只要仔細照著說明做一遍,應該都不會遇到太多問題。但是在Eclipse啟動後,就會遇到許多狀況。例如我們發現從官方下載的Sakai 2.5.2 source,解壓縮後的資料夾,如果只在Eclipse去import這個資料夾,會發現只有找到「Base」一個project,必須再繼續往下選擇sakai-src底下的子目錄,才能夠找到其他project。
在Sakai source下的每個Tools或API,都是獨立的Eclipse project,但彼此之間又有關聯性,例如syllabus是一個project,但我們也必須同時加入user-api、content-api等其他project,在開啟編輯原始碼時,才能夠通過package宣告的檢查。
如果還沒有執行過「mvn clean install」指令,在使用Eclipse匯入project時,許多需要的JAR檔案會找不到,這是因為Sakai的目錄下本身並不包含Library的JAR檔案,而是由Maven自動下載到「~/.m2/repository」資料夾下。Sakai底下的專案,設定Build path的作法通常是設定M2_REPO的classpath變數(在Windows->Preferences->Java->Build Path->Classpath Variables),然後在project的Build path中去引入M2_PATH底下的某些JAR檔。
◎ 我們希望能夠建立在台灣地區推廣Sakai的非官方社群,包括協助官方加速繁體中文語系的翻譯、修正中文字碼不相容問題、開發符合國內使用習慣的擴充功能,如果您(學校、工商團體、個人)有興趣,歡迎與我們連繫(lyhcode小老鼠gmail.com)。
ㄟ…宏哥~~~
回覆刪除泥沒先介紹一下啥是煞凱依,幫他打一下知名度,恐怖大家不只是看不懂,而是看一點就興致缺缺囉~~~^^
這個嘛...等中文社群成立後...就會有詳細的"中文入門指南"了:X
回覆刪除最近接觸到SAKAI
回覆刪除想把source code版建立起來
但是官方的安裝說明
到了BUILD SAKAI那部份
我就看不懂了
可以給我一些幫助嗎 感激不盡
BUILD是用以下的指令
回覆刪除mvn clean install sakai:deploy
前提是JDK 5/MAVEN 2/TOMCAT 5.5/SAKAI 2.5的安裝及環變變數都要正確
如果mvn指令過不了
就必須從錯誤訊息判斷原因了
MVN是啥?!
回覆刪除天文學嗎?!
我覺得應該都設定對了
回覆刪除但是還是Build Failed
可以請問一下你用的
JDK 5/MAVEN 2/TOMCAT 5.5/SAKAI 2.5
這些軟體的詳細版本嗎
我個人用的是
JDK 1.5.0_06
Maven 2.0.6
TOMCAT 5.5.26
SAKAI 2.5.4
謝謝~
版主最近不在家唷~~~
回覆刪除請隨便逛逛~~~
咻~~~