Liferay's use of OSGi will be called the "Liferay Module Framework".

      A Liferay Module will be synonymous with an OSGi Bundle, but for the sake of clarity will further be referred to as Liferay Modules, or simply modules. This naming is to avoid collision with the existing use of Liferay Bundles which are ready to run, fully pre-assembled archive files of Liferay, often including an app server/servlet container and some number of Liferay plugins.

      All properties influencing or configuring the behaviors of modules, or Liferay's use of modules will be prefixed by module.framework.

      All modules implementing core requirements will be contained within the source tree at:


      Each subfolder of /portal-modules will contain a single module's source code, the folder name matching the Bundle-SymbolicName of the module. The exact structure of module subfolder will be defined on the basis of two primary artifact types: A) a jar file B) a war file (in the OSGi context commonly called a WAB or Web Application Bundle). The exact folder structure of each will come later, but will follow common and existing patterns as much as possible.

      The module framework will be enable or disable by the property module.framework.enabled.

      The base path for all module framework storage needs will be ${liferay.home}/data/framework. This base will be defined by the property module.framework.base.dir

      On deployment, all modules in the main source tree will be placed into the folder identified by the property module.framework.lib.dir. The default value for this property will be ${module.framework.base.dir}/lib. This will require that the liferay.home property be set correctly at build time.




            michael.saechang Michael Saechang
            raymond.auge Raymond Auge
            Recent user:
            Michael Saechang
            Participants of an Issue:
            0 Vote for this issue
            0 Start watching this issue


              Days since last comment:
              8 years, 50 weeks ago


                Version Package
                6.1.1 CE GA2
                6.1.20 EE GA2
                6.2.0 CE M2