Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Octocat-spinner-32 ext LPS-43537 Easier to check # of args January 20, 2014
Octocat-spinner-32 hooks Revert "LPS-45860 Add missing language references in other liferay-ho… April 11, 2014
Octocat-spinner-32 layouttpl LPS-43625 Enable translations for page layouts February 19, 2014
Octocat-spinner-32 lib LPS-45150 Resolve bnd.jar via Ivy (2.3.0) March 16, 2014
Octocat-spinner-32 misc Update copyright date, use -present April 04, 2014
Octocat-spinner-32 osgi LPS-42644 Move dir to match core November 28, 2013
Octocat-spinner-32 portlets LPS-45880 SF April 17, 2014
Octocat-spinner-32 shared LPS-46098 Fix BundleServletContextTest April 18, 2014
Octocat-spinner-32 suites Content targeting - update git submodule March 25, 2014
Octocat-spinner-32 themes Fix ignore April 16, 2014
Octocat-spinner-32 tools Update copyright date, use -present April 04, 2014
Octocat-spinner-32 webs SYNC-1231 Regen April 16, 2014
Octocat-spinner-32 .gitignore LPS-40913 fix "javadoc" January 13, 2014
Octocat-spinner-32 .gitmodules Content targeting submodule March 25, 2014
Octocat-spinner-32 CONTRIBUTING.markdown LPS-45406 Replace http with https March 25, 2014
Octocat-spinner-32 README.markdown LPS-37242 SF June 28, 2013
Octocat-spinner-32 build-common-ivy.xml LPS-45623 Support configuring IVY to resolve transitive dependencies … April 02, 2014
Octocat-spinner-32 build-common-osgi-plugin.xml LPS-40913 "manifest" target is not used anymore January 20, 2014
Octocat-spinner-32 build-common-plugin.xml LPS-45621 Things that end with -cmd are never meant to be called dire… April 04, 2014
Octocat-spinner-32 build-common-plugins.xml LPS-45621 Forgot adding test-unit/test-integration to 'typeOfPlugin' … April 04, 2014
Octocat-spinner-32 build-common.xml sync-engine-shared - Add "system" test April 10, 2014
Octocat-spinner-32 build.properties LPS-45623 SF April 02, 2014
Octocat-spinner-32 build.xml LPS-45621 Support executing unit or integration tests April 04, 2014
Octocat-spinner-32 common.bnd LPS-44839 As a developer I would like DS annotations in my plugins to… March 05, 2014
Octocat-spinner-32 copyright.txt Update copyright date, use -present April 04, 2014
Octocat-spinner-32 ivy-settings-publisher.xml LPS-40973 Change variable so that ivy doesn't override October 04, 2013
Octocat-spinner-32 ivy-settings.xml LPS-45150 Resolve bnd.jar via Ivy (2.3.0) March 16, 2014
Octocat-spinner-32 ivy.xml LPS-45150 Resolve bnd.jar via Ivy (2.3.0) March 16, 2014
Octocat-spinner-32 ivy.xml.MD5 LPS-45150 Resolve bnd.jar via Ivy (2.3.0) March 16, 2014
Octocat-spinner-32 source_formatter_excludes.txt SourceFormatter - Add excludes file that contains patterns of files o… January 29, 2014
Octocat-spinner-32 source_formatter_javaterm_sort_exclusions.properties Rename to source_formatter_javaterm_sort_exclusions.properties November 28, 2012
Octocat-spinner-32 source_formatter_line_length_exclusions.properties SF February 21, 2014
Octocat-spinner-32 source_formatter_secure_random_exclusions.properties sync-engine-shared - Allow Encryptor.java to use java.security.Secure… January 22, 2014
Octocat-spinner-32 source_formatter_static_log_exclusions.properties LPS-43927 Remove plugins-security-manager-portlet January 30, 2014
Octocat-spinner-32 source_formatter_xml_exclusions.properties LPS-38824 Rename exclusions file August 12, 2013
Octocat-spinner-32 summary.html LPS-43927 build-summary January 30, 2014
Octocat-spinner-32 summary.xml LPS-43927 build-summary January 30, 2014
Octocat-spinner-32 summary.xsl LPS-29185 August 10, 2012
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. The Plugins SDK chapter of Liferay's Development Guide explains how to create, build, and deploy your plugins. Follow the instructions in this section to build and deploy any of the existing SDK plugins quickly.

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 Development Guide 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.

Finally, consider using Maven to build Liferay Plugins. For excellent overviews of Maven support for Liferay, check out Mika Koivisto's presentation and Getting Started with Liferay Maven SDK.

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.