日期:2014-05-16  浏览次数:20604 次

Eclipse+DB2下Liferay 4.2.2扩展开发环境的建立
<o:p>

Author:Helo
Email:porbilo@gmail.com
最近在一直看Portal的一些东西,以后会逐渐把一些相关的东西写上来,也算一个总结吧。


一、环境:
JDK: JDK 1.4
Liferay: Liferay-portal-tomca-4.2.2.zip
Liferay Src: liferay-portal-src-4.2.2.zip
OS: Windows xp
Tomcat: Tomcat-5.5.X (bundle with liferay JKD 1.4)
Database:DB2 8.2
Jikes: Jikes-1.22
Ant: Apace-ant-1.65


?????? 在系统环境变量里面新建JAVA_HOME、JIKES_HOME、ANT_HOME,在PATH环境变量里面添加%JAVA_HOME%\bin;%JIKES_HOME%\bin;%ANT_HOME%\bin。这里的ANT_HOME和PATH也可以不用设置,使用eclipse中自带的就好,这里就顺便设置下。另:这里使用的是JDK1.4,若要使用1.5则需使用官网提供的tomcat的JDK1.5绑定版。


二、Eclipse环境下的portal工程加载?
???????Liferay的源代码实际上是一个Eclipse工程文件(该项目名称叫portal)。在Eclipse工作目录(我的目录为D:\liferay_4.2,此后记为${WORKSPACE})下建立portal目录,然后把下载下来的源代码liferay-portal-src-4.2.2.zip解压缩portal目录下。?
???????选择File->New->Project->Java Project,输入项目名称为“portal”,保持默认的“create new project in workspace”,选择“Finish”结束。?
?????? 如果上一步成功,那么已经可以在左侧栏看到源代码的目录结构了;并且右键点击项目的根目录,选“Properties”,选“Java Build Path”的“Libraries”标签,应该能够看到所有需要的jar格式库文件在里面了。?
?????? 加载了portal项目之后的Eclipse的Package Explorer栏。
?????? 选择Windows ?show?View?Ant在出现的Ant视图中单击Add build files,在弹出对话框中选择portal项目中根目录下build.xml文件。


三、基于Tomcat的扩展开发环境建立
修改portal下release.properties文件:

  1. lp.source.dir=D:/liferay_4.2/portal ??
  2. lp.ext.dir=D:/liferay_4.2/ext ??
  3. lp.eclipse.dir=D:/liferay_4.2/eclipse ??
  4. lp.eclipse.project.name=ext??

?????? 编辑在${WORKSPACE}/portal\tools\ext_tmpl\ext-ejb\classes下的portal-ext.properties文件,修改#portal.release=enterprise为portal.release=professional。
然后在最后加入下面的语句:

  1. hibernate.dialect=org.hibernate.dialect.DB2Dialect ??
  2. custom.sql.function.isnull=CAST(??AS?VARCHAR(32672))?IS?NULL? ??
  3. custom.sql.function.isnotnull=CAST(??AS?VARCHAR(32672))?IS?NOT?NULL??

liferay使用了hibernate做持久化,而liferay 4.3以前的所有版本在对DB2的支持上都有问题,所以这里需要手动配置hibernate.dialect和null的问题,否则无法启动或启动后出现莫名其妙的问题。
?????? 回到Eclipse中的Ant视图中,双击展开根节点Portal,双击打开根目录下的build.xml,应该可以在Outline看到很多Ant任务。?
?????? Outline下的ANT任务:?
?????? 顺序执行 clean, start, build-ext 。屏幕下方的命令行窗口会跳跃相关文字提示信息,如果一切正确,那么其中不应该有红色的错误信息(绝大多数此处可能出现的错误都是配置文件不正确所引起的)。特别注意的是,如果你已经正确设置了JIKES_HOME和PATH却仍然提示“需要JIKES”,则把你的PATH设置为绝对路径如:C:\jikes\bin(我曾被这个问题郁闷了N久!^0^!)。一切正常的话,那么${WORKSPACE}\ext 目录下应该生成了很多东西了。?
?????? 解压缩下载的liferay-portal-tomcat-4.2.2.zip(可运行的Liferay)到安装目录,以后假定此解压缩目录为${TOMCAT_HOME}。在${WORKSPACE}/ext目录下创建。
app.server.${username}.properties配置文件,在其中添加如下内容:

  1. lp.ext.dir=${WORKSPACE}/ext? ??
  2. app.server.type=tomca