Friday, February 7, 2014

Liferay Plugins Development Introduction


Liferay have very good development SDK to develop applications in liferay. This development SDK is called Plugins SDK.

What is Liferay Plugins SDK?

Liferay Plugins SDK is developer kit to develop liferay applications. This Plugins SDK provide set of packages by using this we will develop liferay application

We will use Plugins SDK for customize liferay portal, modify liferay source code and add new applications in liferay. For doing such thing liferay came up with different Plugins i.e. Hook, Theme, Portlet, Layout and Ext and each one has its own ability from which we can do many things in liferay portal development. Here each piece is called Plugin

What is Plugin?

A Plugin is small component which will give additional support to core component. These components are we can use as plug and play.

Here we will have one core component and we will use Plugins to add additional ability or support to core component.

In liferay we can say liferay portal is core component and we will use hook, portlet, theme and layout are Plugins and it will add addition ability to liferay portal to meet our requirement.

Why Liferay Plugins SDK?

Liferay Plugins SDK will provide you platform to develop Plugins for liferay portal. We all know in software development we need Standard Development Kit to develop new applications. We will use Java JDK to develop java application similarly we will use Liferay SDK to develop Liferay Applications.

What Liferay Plugins SDK Contains?

Plugins SDK contains set of java classes and dependence jar files. We will use these java classes and jar file to create Liferay Plugins.

This Plugins SDK will provide feature like compile, package and deploy the applications into servers.

What is Default Tool Liferay Plugins SDK Use to Build Application?

Liferay Plugins SDK use ANT tool to build applications and build nothing but compile, packaging and deploy into server. Liferay Plugin SDK can support MAVEN tool to build application.

What are the minimum things we required to develop Liferay Plugins?

To develop liferay Plugins we need following things
  • Liferay Plugins SDK
  • ANT Tool
  • Liferay Portal Server
  • Database (optional)

Liferay Plugins SDK

Liferay Plugin Development Kit we can download from Liferay web site. We have different version of Plugins SDK.

The following is liferay Plugins download URL

Liferay have different Plugins for different purpose liferay have Portlet, Theme, Hook, Layout and EXT Plugins.

The following is screen shows you different Plugins in liferay which comes with Liferay Plugins SDK

ANT Tool

ANT is build tool used to compile, package and deploy the application.
Each application have one file called build.xml file there we will define our application build plan like compile, packaging and deploy. Each build file has many tasks and we call tasks as ant targets.

We have different targets like compile, jar, and war and deploy. Each one has its own meaning so that we will use build.xml file to define our application deployment process.

In liferay when we develop liferay Plugins then each Plugin already have its own build file so we need not write any special build.xml file to build or deploy the liferay Plugins. This is very convenient so that we can simple use some targets to deploy the application like compile, deploy.

The following is ANT download place


Before start liferay Plugins development we need to install ANT tool in our system and we need set ANT_HOME and we need add ANT path in system path variable.

Liferay Portal Server

Liferay Portal Server is bundle which contains application server and liferay portal which ready use.

This is simple bundle and liferay portal already deployed in application server so that we simple start the server, as soon as server starts liferay portal will be ready. This is liferay core portal.
Whatever the liferay Plugins we developed these will be deployed into liferay portal server and these deployed Plugins will give more ability or additional features to core liferay portal.

Like we may change look and feel, we may add new feature and we may customize. All these things will be done by liferay Plugins.

The following is liferay portal and application server bundle download location


 Liferay Portal is web application so it need application server. We simple get bundle and extract bundle then start server you liferay portal will be ready.

The following is tutorial how to setup liferay portal.

Database (optional)

In the development data base is optional liferay portal server which include HSQL database. So as soon as liferay start it will connect to HSQL database and all the data and tables will be available in HSQL database.

Liferay Plugin Development Setups

We have many ways to set up Liferay Plugins Development Environments
The following are the ways
  1. LiferayPlugins Development Using ANT Tool
  2. LiferayPlugins Development Using Liferay IDE with Eclipse.
  3. Liferay Plugin Development Using Liferay Developer Studio
  4. Liferay Plugin Development Using MAVEN

In this set up we will use only ANT tool develop liferay Plugins. We can build and deploy Plugins using ANT tool.

The following is tutorial setup development environment using ANT tool

Liferay Community has developed Liferay IDE this is eclipse Plugin so that we can use with eclipse to develop Plugins. This is free software.

The following is tutorial setup development environment using Liferay IDE with eclipse

Liferay Plugin Development Using Liferay Developer Studio

Liferay have developed Liferay Developer Studio is kind of IDE form this we can develop liferay Plugins. This is Enterprise Tool so we need purchase from liferay.

The following is more information about Liferay Developer Studio

Liferay Plugin Development Using MAVEN

We can build application using MAVEN tool this is like ANT tool uses to build applications. Liferay have maven support so we can maven also.

The following is more information about Liferay MAVEN Support


For Liferay Community Edition Liferay Developers I can suggest Liferay IDE and MAVEN Development Environments are best choices.


Popular Posts

Recent Posts

Recent Posts Widget