一直想研究一下Liferay,最近终于有时间开始行动了,在myeclipse上搭建开发环境及Debug折腾了两天,终于搞定了。
tomcat-5.5.17
liferay-portal-src-4.1.3
一、在Eclipse中Import liferay-portal-src-4.1.3
修改.classpath 添加
<classpathentry excluding="com/" kind="src" path="counter-ejb/classes"/>
<classpathentry excluding="com/" kind="src" path="documentlibrary-ejb/classes"/>
<classpathentry excluding="com/" kind="src" path="mail-ejb/classes"/>
<classpathentry excluding="com/" kind="src" path="lock-ejb/classes"/>
<classpathentry excluding="com/" kind="src" path="portal-ejb/classes"/>
<classpathentry excluding="com/" kind="src" path="portal-kernel/classes"/>
<classpathentry excluding="com/" kind="src" path="util-bridges/classes"/>
<classpathentry excluding="com/" kind="src" path="util-java/classes"/>
<classpathentry excluding="com/" kind="src" path="util-taglib/classes"/>
<classpathentry excluding="com/" kind="src" path="util-wsrp/classes"/>
二、在Eclipse中新建一个Web Project (root),将liferay-portal-src-4.1.3\portal-web中的文件导入到root/web中,设置liferay-portal-src-4.1.3为required project(或者把liferay-portal-src-4.1.3的输出直接设到web project的输出上),并且加入liferay-portal-src-4.1.3的lib.
修改Web Context-root为 / ,加入index.html,修改Web.xml,在src中添加portal-ext.properties(覆盖portal.properties中的值,liferay中可以用ext来扩充配置),liferay-portal-src-4.1.3\definitions中的内容copy到src/com.liferay.portal.definitions中
添加com.liferay.portal.deploy.dependencies及其中的文件(变态的用到了util-*.jar三个,hotdeploy有用到,目前还不知道清楚有什么用)。
三、Eclipse配置tomcat
optional java vm arguments中需要添加-Xms128m -Xmx512m -Dfile.encoding=UTF8 -Duser.timezone=GMT -Djava.security.auth.login.config=%TOMCAT_HOME%conf/jaas.config
四、tomcat的修改
添加 %tomcat_home%/conf/jaas.config,添加%tomcat_home%/conf/Catalina/localhost/ROOT.xml
修改%tomcat_home%/conf/catalina.properties——common.loader中添加${catalina.home}/common/lib/ext/*.jar(还要添加ext这个目录copy进需要添加的jar)
修改 %tomcat_home%/bin/catalina.bat 加入set JAVA_OPTS=-Xms128m -Xmx512m -Dfile.encoding=UTF8 -Duser.timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config
现在应该可以用于开发了,只是liferay编译一下下要多等会了,哪个不是一般的慢呀(机子也实在太烂).
顺便说下,debug了一下,个人感觉liferay的性能应该不会太理想,Spring用的也蛮古怪的,Factory中也用了事务。对liferay中spring的用法感觉也不是太好(也有点)。——个人观点(水平有限,有错的地方多多指教)