在Liferay中,如果我们要让服务器上使用自己的js库(比如ext-js库)而不是使用默认的aui库,可以按照下面的步骤做:

 

(1)放置库文件

我们到$liferay_home/tomcat-7.0.23/webapps/ROOT/html/js 目录下建一个目录叫extjs,然后把ext-all.js复制进去。

Liferay 如何加入自定义的js库文件_第1张图片

(2) 在$liferay_home目录下创建portal-ext.properties ,然后从portal-impl.jar 包中的portal.properties中吧javascript.barebone.files 这个属性以及所有的文件集合复制进去。然后在文件集合的第一行添加我们要包含的ext-js库文件:如下所示:

   
   
   
   
  1. javascript.barebone.files=\ 
  2.         # 
  3.         # ext-js 
  4.         # 
  5.         \ 
  6.         extjs/ext-all.js,\ 
  7.         \ 
  8.         # 
  9.         # YUI core 
  10.         # 
  11.         \ 
  12.         aui/yui/yui.js,\ 
  13.         \ 
  14.         # 
  15.         # YUI modules 
  16.         # 
  17.         \ 
  18.         aui/anim-base/anim-base.js,\ 
  19.         aui/anim-color/anim-color.js,\ 
  20.  
  21. ...(都是从portal.properties中复制过来的) 

我们要添加的部分见我用×××highlight的部分,就是加载我们需要的库文件。

(3)在$liferay_home/portal-ext.properties中,我们把

javascript.fast.load设为false,这样做的好处是不会产生被yuicompressor压缩后的单独js文件(barebone.jsp或者everything.jsp),而是显示所有没有被压缩过的文件:

   
   
   
   
  1. javascript.fast.load=false 

 

大功告成,现在我们打开浏览器,访问主页,打开F12,在资源视图中就可以看到我们需要的ext-all.js被正确的加载进来了:

Liferay 如何加入自定义的js库文件_第2张图片