Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Java JavaScript CSS HTML Groovy Smarty
Failed to load latest commit information.
apps LPS-48475 Sample broken
dependencies LPS-58402
ext LPS-55188 Example create.sh Usage message does not work for any plugi…
hooks LPS-57706 Use new class name
layouttpl LPS-55188 Example create.sh Usage message does not work for any plugi…
lib LPS-56434 remove ecj
misc Update copyright date, use -present
osgi/lib/plugin LPS-42644 Move dir to match core
portlets LPS-57175 match select_parent.jsp
shared LPS-57745 Fix schema location version
themes LPS-51038 update import references
tools LPS-51038 more
webs SYNC-1412S F
.gitignore SYNC-1412 Ignore
CONTRIBUTING.markdown LRDOCS-1575 Update README and CONTRIBUTING to link to LDN.
README.markdown LRDOCS-1575 Update README and CONTRIBUTING to link to LDN.
build-common-ivy.xml LPS-55635 Unset mirrors.src property
build-common-node.xml LPS-57148 Sort
build-common-osgi-plugin.xml LPS-52731 move to macrodefs and merge into the jar task (on the osgi …
build-common-plugin.xml LPS-57933 Add "build-taglibs" macrodef, which calls TagBuilder
build-common-plugins-inspector.xml LPS-57087 Resource count should never go negative - when checking aga…
build-common-plugins.xml LPS-57004 Propagate test.type for modules test-class-group
build-common.xml LPS-58383 copy css files from .sass-cache to parent folder during war
build-plugin.gradle LPS-51081 Apply "gradle-plugins", remove old Gradle code
build.gradle LPS-51081 Apply "gradle-plugins", remove old Gradle code
build.properties LPS-58177 Update Weblogic server version to 12.1.3
build.xml LPS-56798 - update path for zip-portal task
ci.properties LRU
common.bnd LPS-47133 Build problem caused by bnd in China
copyright.txt Update copyright date, use -present
gradle.properties LPS-57037 Service Builder needs to generate the code based on the new…
ivy-settings-publisher.xml LPS-40973 Change variable so that ivy doesn't override
ivy-settings.xml LPS-49586 Disable validation per project
ivy.xml LPS-57328 Upgrade Spring Test dependency to be consistent with the Sp…
ivy.xml.MD5 LPS-57328 Generated MD5 sum
sdk.gradle LPS-51081 Apply "gradle-plugins", remove old Gradle code
settings.gradle LPS-51081 Exclude ext plugins for now
source-formatter.properties LPS-54261 SF excludes
summary.html LPS-57872 build-summary
summary.xml LPS-57872 build-summary
summary.xsl LPS-29185
util.gradle LPS-51081 Create portlet

README.markdown

Liferay Plugins

The liferay-plugins repository is part of the Liferay Portal project. Liferay Portal is an open source enterprise web platform for building business solutions that deliver immediate results and long-term value. Liferay Portal started out as a personal development project in 2000 and was open sourced in 2001.

To get started, check out the project's community homepage at http://liferay.org!

Most of the plugins found in the liferay-plugins repository can be easily installed on Liferay Portal via Liferay Marketplace. To build one or more of the plugins yourself, read below for details.

Source Code

Liferay's main source code resides in two repositories: liferay-portal and liferay-plugins. Liferay has additional repositories for the following:

Liferay Portal releases are built from the liferay-portal repository and include select plugins from the liferay-plugins repository. You can build Liferay Portal, its plugins, and/or any of the other supporting technologies from their respective repositories.

For more information on building liferay-portal, see the README file in the liferay-portal repository.

Quick Start

In the liferay-plugins repository, plugins are laid out in a software development kit (SDK) -- the Liferay Plugins SDK. All Liferay plugin types, including portlets, themes, layout templates, hooks, and EXT plugins, can be created and maintained in the SDK. Tutorials on the Liferay Developer Network (LDN) explain how to create, build, and deploy Liferay plugins. But you can conveniently follow the instructions in this section to build and deploy any of the existing SDK plugins right now.

For demonstration purposes, let's pretend your user name is joe and you have a Liferay instance bundled with Apache Tomcat running in your /home/joe/ directory.

  1. Fork the liferay-plugins repository.

  2. Clone your fork of the repository.

  3. Create a build.${username}.properties file in the root directory of your liferay-plugins repository clone. Be sure to replace ${username} with your user name.

    /home/joe/liferay-plugins/build.joe.properties
    

    Note, to determine your user name, execute echo %USERNAME% on Windows or whoami on Unix/Linux.

  4. In your build.${username}.properties file, specify the app.server.parent.dir property set to the parent path of your app server.

    app.server.parent.dir=/home/joe/liferay-portal-6.1.1-ga2
    

    Use your build.${username}.properties file to specify any additional properties you wish to override from the base build.properties file; do not modify the base file.

  5. Navigate to the directory of a plugin (e.g. Sample JSP Portlet) and deploy it using Ant.

    cd /home/joe/liferay-plugins/portlets/sample-jsp-portlet
    ant deploy
    

    The plugin compiles, its WAR file is built to the plugin's dist directory, the WAR file is copied to your Liferay Hot Deploy directory, and the plugin is deployed immediately. It's just that easy!

There are many other options for developing new Liferay plugins using the Plugins SDK. Consult the Liferay Developer Network's Develop section for indispensable explanations, examples, and reference material on the Liferay Plugins SDK and surrounding technologies.

Also, check out Liferay IDE. The Liferay IDE project provides an Eclipse-based Liferay development environment to help you build and maintain Liferay projects easily. The Learning Paths and Tutorials on the Liferay Developer Network show you how to leverage Liferay IDE as you develop on Liferay. LDN also covers developing Liferay plugins using Maven.

Contributing

Liferay welcomes any and all contributions! If you have an idea for a new plugin or a new feature in an existing plugin, and wish to implement it, follow the contribution steps outlined in the CONTRIBUTING guide. It explains how to contribute to Liferay and contains links to additional useful resources.

More Information

For more information about filing bugs, staying updated with Liferay on social media, and other ways to participate, check out the Liferay Community Homepage and consult the README file in the liferay-portal repository.

Liferay Portal Community Edition License

This library, Liferay Portal Community Edition, is free software ("Licensed Software"); you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; including but not limited to, the implied warranty of MERCHANTABILITY, NONINFRINGEMENT, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Something went wrong with that request. Please try again.