« Back

Deploying Liferay artifacts to your own maven repository

Company Blogs February 21, 2012 By Mika Koivisto Staff

As part of Liferay 6.1 release we’ve created a new package that has a convenient  script to install Liferay artifacts to your local repository or to a remote repository. This package is provide for both CE and EE releases but it is more useful for EE users because we don’t release EE versions of the artifacts to Maven Central repository.

You can download the 6.1 GA1 package from here and 6.1 EE users can download it from Customer Portal. Once you have downloaded the zip file unzip it. 

In the root of the package you’ll find build.properties. This file defines the remote repository location, repository id and optional gpg signing key and password. You can override settings in this file similarly to those in plugins sdk by creating a build.USERNAME.properties file and overriding the properties you want. If you are just deploying to you local repository there’s no need to override any settings. 

Before you begin you should make sure you have mvn in your path. For remote deployment you should also increase the available memory for maven otherwise you might get a OutOfMemoryError. For windows you can use following in your cmd prompt or set MAVEN_OPTS environment variable.

set MAVEN_OPTS=-Xmx512m -XX:MaxPermSize=128m

For Unix-like systems such as Linux and Mac OS X use

export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m"

To deploy to your local maven repository you can just run:

ant install 

To deploy to a remote repository such as Sonatype Nexus you need to set credential required to deploy to the repository in ${USER_HOME}/.m2/settings.xml like this:

<?xml version="1.0"?>
<settings>
    <servers>
        <server>
            <id>liferay</id>
            <username>admin</username>
            <password>password</password>
        </server>
    </servers>
</settings>

Then you need to add the repository id and repository location to your build.USERNAME.properties like this:

lp.maven.repository.id=liferay lp.maven.repository.url=http://localhost/nexus/content/repositories/liferay-release

Notice that the repository id must match the one in your settings.xml so that correct credentials are picked up. You can also set gpg.keyname and gpg.passphrase if you want the artifacts signed. Check out this blog post on how to generate gpg key and distribute the public key.

Now you can deploy it just by running:

ant deploy

Now you have following Liferay artifacts at your disposal. Their groupId is com.liferay.portal and artifactId is one listed below and version is the Liferay release number such as 6.1.0 for 6.1 GA1 and 6.1.10 for 6.1 EE1.

  • portal-client
  • portal-impl
  • portal-service
  • portal-web
  • support-tomcat
  • util-bridges
  • util-java
  • util-taglib
Threaded Replies Author Date
Any word on when the 6.1EE GA1 Maven artifacts... Keith O'Connell February 22, 2012 4:13 AM
nice! Thanks Mika. Jonas Yuan February 22, 2012 8:11 AM
Keith, it'll be there by end of the week. Mika Koivisto February 22, 2012 9:25 AM
Perfect, great info! Thanks a bunch! Keith O'Connell February 22, 2012 1:33 PM
Still waiting for the EE artifacts... Henri Koskenranta February 26, 2012 11:25 PM
Is active development of liferay-maven-support... Kamesh Sampath February 27, 2012 4:33 AM
Kamesh, it's currently in maintenance mode but... Mika Koivisto February 28, 2012 3:15 PM
Henri, it's there now. Sorry for the delay. Mika Koivisto March 6, 2012 12:44 PM
As per you mentioned above we do not require to... Sagar A Vyas January 8, 2016 6:22 PM
Finally found the solution of this problems and... Sagar A Vyas January 10, 2016 9:34 PM
Superb Abdulbasit Shaikh June 21, 2016 4:14 AM
Superb Sagar Vyas Abdulbasit Shaikh June 21, 2016 4:18 AM
Thank you Abdulbasit :) Sagar A Vyas June 21, 2016 2:22 PM
Valuable article - I was fascinated by the... Niki Heaney March 19, 2016 11:38 PM

Any word on when the 6.1EE GA1 Maven artifacts might be ready for distribution? Not seeing them on the Customer Portal yet.
Posted on 2/22/12 4:13 AM.
nice! Thanks Mika.
Posted on 2/22/12 8:11 AM.
Keith, it'll be there by end of the week.
Posted on 2/22/12 9:25 AM in reply to Jonas Yuan.
Perfect, great info! Thanks a bunch!
Posted on 2/22/12 1:33 PM in reply to Mika Koivisto.
Still waiting for the EE artifacts...
Posted on 2/26/12 11:25 PM.
Is active development of liferay-maven-support is happening ? do you have any release schedules, if people want to contribute how do they do it just fork and send you a pull req ?
Posted on 2/27/12 4:33 AM.
Kamesh, it's currently in maintenance mode but development should pick up once we start developing Liferay 6.2 at full force. If you want to contribute open a ticket in MAVEN Jira project, mark the ticket contributed and accept the contributor agreement and send a pull request to me. Also comment the pull request url to the ticket so that others can also see it.

Any issues that are set with fix in version Community backlog is something we are looking for community contributions and of course other ideas are also more than welcome. It's also recommended to solicit others input on contributions on the Contributions forum category http://www.liferay.com/community/forums/-/message_boards/category/555425
Posted on 2/28/12 3:15 PM in reply to Kamesh Sampath.
Henri, it's there now. Sorry for the delay.
Posted on 3/6/12 12:44 PM in reply to Mika Koivisto.
As per you mentioned above we do not require to have build.<username>.properties file if we are dealing with local M2 folder (correct me if I miss understood it ) so I just need to extract maven pacakge and hit ant install command ? while doing this I am getting error "Property lp.maven.repository.url was circularly defined."

Now I dont have anything in setting.xml (id ,url) as I am dealing with local M2 how can execute this command without setting this property ?

Help would be appreciated.

Thanks,
Sagar Vyas
Posted on 1/8/16 6:22 PM.
Finally found the solution of this problems and others, it seems that apache mvn.bat is renamed to mvn.cmd with maven 3.3.1 version onward provided I have shared all three solution here http://share4gain.blogspot.com/2016/01/solution-possible-errors-while.html

Hope this will help.

Thanks Mika for sharing this.

Thanks,
Sagar Vyas
Posted on 1/10/16 9:34 PM in reply to Sagar A Vyas.
Valuable article - I was fascinated by the specifics , Does someone know if I could find a fillable a form example to edit ?
Posted on 3/19/16 11:38 PM.
Posted on 6/21/16 4:14 AM in reply to Sagar A Vyas.
Superb Sagar Vyas
Posted on 6/21/16 4:18 AM in reply to Sagar A Vyas.
Thank you Abdulbasit emoticon
Posted on 6/21/16 2:22 PM in reply to Abdulbasit Shaikh.