1.
概述
1.1.
選擇一種安裝類型
Sakai 2.2.1
提供三種不同的安裝類型:
Demo:
|
Demo
版包括了
tomcat
和預裝好的
webapps
,所以唯一預先要做的就是提供
JDK1.4.2
或者更高版本的
java
環境。但是該版本只適合小范圍應用,適合于進行軟件評估和單服務器的應用。
|
Binary:
|
如果你有一個已經配置好的
tomcat
,這種安裝類型提供了一個簡單的安裝方式,即直接解壓
sakai
應用包到
tomcat
,而不需要通過專業的
build
,適合于不需要代碼級改動的應用要求。
|
Source:
|
這種方式只提供源代碼,安裝前須提供
tomcat
、專業
build
工具、數據庫。用戶可以通過
build
配置來自定義需安裝的組件。
|
1.2. Demo
安裝
Demo
安裝是非常簡單直接的,其最關鍵的就是確保正確的
java
環境。安裝步驟如下:
1.??????????????????
配置
java
的安裝路徑(
JAVA_HOME
),詳見第二部分要求。
2.??????????????????
下載并解壓
demo
壓縮包。
3.??????????????????
用以下命令啟動
tomcat
,腳本在
tomcat
根目錄。
Windows:
|
start-sakai.bat
|
Mac/*nix:
|
start-sakai.sh
|
Tomcat
啟動后,可以通過地址:
http://localhost:8080/portal
來進行訪問。具體怎么使用
sakai
,參見第六部分說明。
停止
sakai
的方式:
:
Demo
安裝特別注意事項:
數據存儲
|
Demo
安裝版的數據保存在
HypersonicSQL database (HSQLDB)
中,運行時,數據存放在內存中,
tomcat
停止時寫回文件,文件位于:
sakai-demo/sakai/db/sakai.db.*
.
|
沒有
email
配置
|
Sakai
的
demo
版沒有配置
email
|
1.3.
二
進制安裝
對于已經有了配置好的
tomcat
服務器的用戶,二進制安裝提供了一種快捷的安裝模式。
Tomcat
的具體配置要求詳見第二部分說明。通過解壓預先編譯好的
sakai
安裝包到
tomcat
的根目錄即可。
如果你希望配置自己的安裝目錄,你必須手工配置
CATALINA_HOME
,以指定你的
sakai
安裝目錄,具體見第四部分說明。
1.4.
源代碼安裝
Demo
和二進制安裝提供了一種快速的方式來使用
sakai
,但是這兩種安裝方式都不能作代碼級的改變。源代碼安裝方式提供了一種定制安裝,這種安裝方式相對復雜,具體有以下幾個大的步驟:
1.??????????????????
配置安裝環境,包括
java
、
tomcat
和專業編譯工具。
2.??????????????????
編譯和發布,通過專業編譯工具來發布
sakai
。
3.??????????????????
根據需要,對
sakai
應用進行安裝后配置。
4.??????????????????
如果需要,進行數據庫配置。
1.5.
從以前版本移植
2.2.1 a
dds only bug fixes to 2.2.0, and so a transition between the two should be straightforward. If you have been running 2.2.0 already, you should be able to deploy 2.2.1 with confidence: it will not break your skins, providers, or other 2.2 code.
If you are moving from an earlier 2.1 or 2.0 codebase, however, 2.2 involves some significant changes: in tools, DB schema, and APIs. Migrating to 2.2 from a previous release therefore requires close attention to detail. Be sure to go over the release notes carefully, and a few key hurdles are identified below:
sakai.properties:
|
The 2.2 framework refactoring means that many package names have changed, and these differences will mainly be encountered in
sakai.properties
settings which reference beans. It's best to not try to use a
sakai.properties
from a previous release, and instead start with the sample in
reference/docs/sakai.properties
.
|
DB conversion scripts:
|
Every release has DB conversion scripts, and 2.2.1 is no exception. Be sure, however, to read these scripts over carefully before executing them on your production data. They do not take into account any special customizations you may have done, and you may need to alter them for your situation. See the Database Configuration section for more details.
|
Provisional tools:
|
A few contrib tools that schools may have already put into production are now provisional with 2.2 releases. The DB conversion scripts in particular assume that these new provisional tools are not represented in your schema, and attempt to introduce them. If you have already deployed
Message
Center
,
Post 'Em
,
Search
, or
Summary Calendar
on a production system, you'll want to be sure to avoid running the portions of the conversion scripts that pertain to them. Again, see the Database Configuration section for more details.
|
Providers:
|
Among the changes that 2.2 introduces is a separation of external user identifiers from Sakai's internal user ids. Any custom
UserDirectoryProvider
will need some alteration to account for this, along with changes to its import statements and declarations that stem from API changes. See the release notes for more details.
|
?
2.
安裝環境配置
2.1.
驗證
java
安裝版本
檢查你的系統中是否裝有
java
(版本在
1.4.2
或更高),以下以
*nix
系統為例:
$ java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Server VM (build 1.5.0_06-b05, mixed mode)
如果你選擇了源代碼安裝方式,必須確保你安裝了
J2SE
,而不僅僅是
JRE
。
2.2.
驗證
java
環境變量
有兩個
java
環境變量
JAVA_HOME
、
PATH
需要配置。
配置方式如下:
Windows:
|
Set the (or create a new) environment variable
JAVA_HOME
to
C:\jdk1.5.0_06
.
|
Mac/*nix:
|
export JAVA_HOME=/usr/java/java-current
|
Windows:
|
Append the string
;C:\jdk1.5.0_06\bin
to the end of the system variable named Path.
|
Mac:
|
Not necessary.
|
*nix:
|
export PATH=$PATH:$JAVA_HOME/bin/
|
2.3.
安裝
Tomcat
Sakai 2.2.1
推薦使用
Tomcat 5.5.17
。具體安裝方法略。
2.4.
配置
Tomcat
Sakai
支持
UTF-8
字符集,所以必須配置
tomcat
接受
UTF-8 URLs
,因為
tomcat
將
ISO-8859-1
作為其缺省的
URL
編碼。通過編輯
$CATALINA_HOME/conf/server.xml
文件,增加
URIEncoding="UTF-8"
屬性到
<connector>
標記里面,即可改變
tomcat
的
URL
字符集的配置。以下是示例:
<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100" debug="0"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
2.5.
安裝
Maven
Maven
是
sakai
用的一種
build
工具。當前
sakai
要求的穩定版本是
1.0.2
,可以從
http://maven.apache.org/start/download.html
下載
Maven
的更新版本
當前已經有了
maven1.1beta
版和
moven2.0
版,但是對于
sakai2.2
來說,
maven1.0.2
版才能真正適合
sakai
的許多插件。
Moven
的安裝就是直接解壓到一個指定位置即可。
2.6.
配置
Maven
為了使用
maven
,你必須配置兩個環境變量,并且利用
maven
提供的腳本創建一個本地存儲區。以下是環境變量和創建
maven
存儲區的示例:
Windows:
|
Create a new
MAVEN_HOME
environment variable to
C:\maven-1.0.2
. Then append to the PATH variable
;C:\maven-1.0.2\bin
|
Mac/*nix:
|
export MAVEN_HOME=/usr/local/maven; export PATH=$PATH:$MAVEN_HOME/bin
|
Windows:
|
install_repo.bat %HOMEDRIVE%%HOMEPATH%\.maven\repository
|
Mac/*nix:
|
install_repo.sh $HOME/.maven/repository
|
你需要在你的根目錄下創建一個
build
屬性文件,在這個文件里,將定義一些
sakai
編譯的基本參數。在根目錄創建一個名為
build.properties
的文本文件,
拷貝以下內容到文件中:
maven.repo.remote=http://source.sakaiproject.org/maven/
maven.tomcat.home=
/usr/local/tomcat/
最后,為了確保你能夠起動
maven
,運行
maven –v
命令,將起動
maven
并報告其版本。
?
注:需下載的相關依賴:(以下列出的依賴文件最好事先下載,并存放到相關目錄(目錄為
.maven/repository
,從
http://source.sakaiproject.org/maven/
處下載)
tomcat/zips/
apache-tomcat-5.5.17.zip
tomcat/zips/
apache-tomcat-compat-5.5.17.zip
tomcat/jars/naming-resources-tomcat-5.5.17.jar
tomcat/jars/catalina-tomcat-5.5.17.jar
tomcat/jars/catalina-optional-tomcat-5.5.17.jar
?tomcat/jars
/
jmx-tomcat-5.5.17.jar
sakaiproject/plugins/sakai-2.2.jar
commons-jelly/jars/commons-jelly-tags-jsl-20030211.143151.jar
commons-jelly/jars/commons-jelly-tags-log-20030211.142821.jar
commons-jelly/jars/commons-jelly-tags-velocity-20030303.205659.jar
commons-jelly/jars/commons-jelly-tags-antlr-20030211.143720.jar
commons-dbcp/jars/commons-dbcp-1.2.1.jar
commons-dbcp/jars/commons-dbcp-1.2.jar
commons-dbcp/jars/commons-dbcp-1.1.jar
commons-pool/jars/commons-pool-1.2.jar
commons-pool/jars/commons-pool-1.3.jar
commons-net/jars/commons-net-1.1.0.jar
commons-logging/jars/commons-logging-1.0.4.jar
commons-el/jars/commons-el-1.0.jar
commons-id/jars/commons-id-0.1-dev.jar
commons-fileupload/jars/commons-fileupload-1.0.jar
commons-fileupload/jars/commons-fileupload-1.1.jar
commons-digester/jars/commons-digester-1.6.jar
commons-collections/jars/commons-collections-3.1.jar
commons-collections/jars/commons-collections-2.1.1.jar
commons-beanutils/jars/commons-beanutils-1.7.0.jar
commons-lang/jars/commons-lang-2.1.jar
commons-codec/jars/commons-codec-1.2.jar
commons-codec/jars/commons-codec-1.3.jar
commons-validator/jars/commons-validator-1.3.0.jar
commons-validator/jars/commons-validator-1.0.2.jar
commons-io/jars/commons-io-1.1.jar
commons-discovery/jars/commons-discovery-0.2.jar
commons-jxpath/jars/commons-jxpath-1.1.jar
commons-resources/jars/commons-resources-0.1-dev.jar
commons-math/jars/commons-math-1.0.jar
velocity/jars/velocity-1.4-dev.jar
velocity/jars/velocity-1.3.1.jar
velocity/jars/velocity-dep-1.3.1.jar
velocity-dvsl/jars/velocity-dvsl-0.45.jar
velocity/jars/velocity-1.4.jar
isorelax/jars/isorelax-20030108.jar
thaiopensource /jars/jing-20030619.jar
jsch/jars/jsch-0.1.5.jar
taglibrarydoc/jars/tlddoc-1.2.jar
servletapi/jars/servletapi-2.4.jar
org.springframework/jars/spring-1.2.8.jar
junit/jars/junit-3.8.1.jar
antlr/jars/antlr-2.7.2.jar
antlr/jars/antlr-2.7.6rc1.jar
jdom/jars/jdom-1.0.jar
org.hibernate/jars/hibernate-3.1.3.jar
jsf/jars/ jsf-api-1.1.01.jar
myfaces/jars/
myfaces-all-1.1.1.jar
myfaces/jars/myfaces-1.0.9.jar
myfaces/jars/tomahawk-1.1.1.jar
jspapi/jars/jsp-api-2.0.jar
jsf/jars/jsf-impl-1.1.01.jar
jstl/jars/jstl-1.0.2.jar
jstl/jars/jstl-1.1.2.jar
taglibs/jars/standard-1.0.4.jar
taglibs/jars/standard-1.1.2.jar
concurrent/jars/concurrent-1.3.4.jar
logkit/jars/logkit-1.2.jar
oro/jars/oro-2.0.8.jar
oro/jars/oro-2.0.7.jar
oro/jars/oro-2.0.6.jar
javamail/jars/mail-1.3.1.jar
activation/jars/activation-1.0.2.jar
hsqldb/jars/hsqldb-1.7.3.3.jar
hsqldb/jars/hsqldb-1.7.3.0.jar
cglib/jars/cglib-nodep-2.1_3.jar
cglib/jars/cglib-full-2.0.2.jar
dom4j/jars/dom4j-1.6.1.jar
dom4j/jars/dom4j-1.6.jar
dom4j/jars/dom4j-1.4.jar
ehcache/jars/ehcache-1.1.jar
jdbc/jars/jdbc2_0-stdext-h2.1.8.jar
jta/jars/jta-h2.1.8.jar
jta/jars/jta-1.0.1b.jar
xalan/jars/xalan-2.6.0.jar
xalan/jars/xalan-2.3.1.jar
xerces/jars/xercesImpl-2.6.2.jar
xerces/jars/xmlParserAPIs-2.6.2.jar
xerces/jars/xercesImpl-2.0.2.jar
xml-apis/jars/xml-apis-2.0.2.jar
aopalliance/jars/
aopalliance-1.0.jar
portlet-api/jars/portlet-api-1.0.1.jar
org.springframework/jars/spring-mock-1.2.6.jar
avalon-framework/jars/
avalon-framework-20020627.jar
avalon-framework/jars/avalon-framework-api-4.2.0.jar
avalon-framework/jars/avalon-framework-impl-4.2.0.jar
avalon-framework/jars/avalon-framework-4.1.3.jar
avalon-phoenix/jars/avalon-phoenix-bsh-commands-4.0.4.jar
avalon-phoenix/jars/avalon-phoenix-client-4.0.4.jar
avalon-phoenix/jars/avalon-phoenix-loader-4.0.4.jar
avalon-phoenix/jars/avalon-phoenix-engine-4.0.4.jar
fop/jars/fop-0.20.5.jar
fop/jars/fop-20060405.jar
fop/jars/xmlgraphics-commons-snapshot.jar
batik/jars/batik-1.5-fop-0.20-5.jar
batik/jars/batik-awt-util-1.6.jar
batik/jars/batik-bridge-1.6.jar
batik/jars/batik-css-1.6.jar
batik/jars/batik-dom-1.6.jar
batik/jars/batik-ext-1.6.jar
batik/jars/batik-extension-1.6.jar
batik/jars/batik-gui-util-1.6.jar
batik/jars/batik-gvt-1.6.jar
batik/jars/batik-parser-1.6.jar
batik/jars/batik-rasterizer-1.6.jar
batik/jars/batik-rasterizer-ext.jar
batik/jars/batik-script-1.6.jar?
batik/jars/batik-slideshow-1.6.jar
batik/jars/batik-squiggle-1.6.jar
batik/jars/batik-squiggle-ext-1.6.jar
batik/jars/batik-squiggle-ext.jar
batik/jars/batik-svg-dom-1.6.jar
batik/jars/batik-svggen-1.6.jar
batik/jars/batik-svgpp-1.6.jar?
batik/jars/batik-swing-1.6.jar
batik/jars/batik-transcoder-1.6.jar
batik/jars/batik-ttf2svg-1.6.jar
batik/jars/batik-util-1.6.jar
batik/jars/batik-xml-1.6.jar
odmg/jars/odmg-3.0.jar
log4j/jars/log4j-1.2.9.jar
poi/jars/poi-2.5.1.jar
poi/jars/poi-3.0-alpha1-20060424.jar
poi/jars/poi-scratchpad-3.0-alpha1-20060424.jar
lucene/jars/lucene-1.4.3.jar
lucene/jars/lucene-core-1.9.1.jar
lucene/jars/lucene-misc-1.9.1.jar
easymock/jars/easymock-1.1.jar
jtidy/jars/jtidy-4aug2000r7-dev.jar
pdfbox/jars/pdfbox-0.7.1.jar
james-phoenix/jars/cornerstone-jp2.1.3.jar
james-phoenix/jars/excalibur-baxter-1.0a.jar
james-phoenix/jars/jing-jp2.1.3.jar
james-phoenix/jars/james-2.1.3.j
dnsjava/jars/dnsjava-1.2.3.jar
excalibur-datasource/jars/excalibur-datasource-1.1.1.jar
excalibur-cli/jars/excalibur-cli-1.0.jar
excalibur-collections/jars/excalibur-collections-1.0.jar
excalibur-concurrent/jars/excalibur-concurrent-1.0.jar
excalibur-configuration/jars/excalibur-configuration-1.0.jar
excalibur-containerkit/jars/
excalibur-containerkit-1.0.jar
excalibur-extension/jars/excalibur-extension-1.0.jar
excalibur-i18n/jars/excalibur-i18n-1.0.jar
excalibur-instrument/jars/excalibur-instrument-0.1.jar
excalibur-io/jars/excalibur-io-1.1.jar
excalibur-logger/jars/excalibur-logger-1.0.jar
excalibur-pool/jars/excalibur-pool-1.0.jar
excalibur-thread/jars/excalibur-thread-1.0.jar
excalibur/jars/excalibur-threadcontext-1.0.jar
excalibur-util/jars/excalibur-util-1.0.jar
mx4j/jars/mx4j-jmx-2.0.1.jar
mx4j/jars/mx4j-tools-1.1.1.jar
rome/jars/rome-0.7.jar
OKI/jars/OkiOSID-2.0.ja
OKI/jars/okiRegistry-2005-10-19.jar
OKI/jars/okiSearchAdjusters-2005-10-19.jar
OKI/jars/OkiSID-rc6.1.jar
nekohtml/jars/nekohtml-0.9.5.jar
axis/jars/axis-1.3.jar
axis/jars/axis-1.1.jar
axis/jars/axis-ant-1.1.jar
axis/jars/axis-jaxrpc-1.3.jar
axis/jars/axis-saaj-1.3.jar
axis/jars/axis-wsdl4j-1.5.1.jar
axis/jars/
axis-saaj-1.2-RC1.jar
axis/jars/axis-jaxrpc-1.2-RC1.jar
navigo/jars/OKI-SPRING-HIBERNATE-0.jar
navigo/jars/SakaiBaseFramework-1.0.a1.jar
jaxen/jars/jaxen-1.0-FCS-full.jar
ojb/jars/db-ojb-1.0.rc6.jar
saxpath/jars/saxpath-1.0-FCS.jar
struts/jars/struts-1.1.jar
wsdl4j/jars/wsdl4j-1.4.jar
quartz/jars/quartz-1.4.0.jar
quartz/jars/quartz-1.5.1.jar
websphinx/jars/websphinx-0.5.jar
openldap/jars/ldap-2005.03.29.jar
?
?
?