Using Maven to automate tasks for the Liberty profile

Apache Maven is a software project management tool based on the concept of a project object model (POM). You can use the Maven plug-in provided by the Liberty profile to manage the server and applications.

Before you begin

The Maven plug-in for the Liberty profile is located in the WebSphere® Application Server Developer Community (WASdev) Maven repository. If you want to use the Maven plug-in for Liberty, you must make sure the WASdev plug-in repository is specified in the pom.xml file of your project. The following example shows how to configure this repository and enable liberty-maven-plugin in your project.
<project>
    ...
    <pluginRepositories>
        <!-- Configure WASdev repository -->
        <pluginRepository>
            <id>WASdev</id>
            <name>WASdev Repository</name>
            <url>http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/maven/repository/</url>
            <layout>default</layout>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
            <releases>
                <enabled>true</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>
    ...
    <build>
        <plugins>
            <!-- Enable liberty-maven-plugin -->
            <plugin>
                <groupId>com.ibm.websphere.wlp.maven.plugins</groupId>
                <artifactId>liberty-maven-plugin</artifactId> 
                <version>1.0</version>
                <!-- Specify configuration, executions for liberty-maven-plugin --> 
                ...             
            </plugin>
        </plugins>
    </build>        
    ...        
</project>
The Liberty Maven plug-in must be configured with Liberty profile server installation information. The installation information can be specified as an existing installation directory, a compressed archive, or as a Maven artifact.
  • Configure with existing installation directory.
    Use the serverHome parameter to specify the directory of an existing Liberty profile server installation. For example:
            ...
            <plugin>
                <groupId>com.ibm.websphere.wlp.maven.plugins</groupId>
                <artifactId>liberty-maven-plugin</artifactId> 
                <version>1.0</version>
                <configuration>
                    <serverHome>/opt/ibm/wlp</serverHome>
                </configuration>
            </plugin>
            ...
  • Configure with compressed archive.
    Use the assemblyArchive parameter to specify a compressed archive that contains Liberty profile server files. For example:
            ...
            <plugin>
                <groupId>com.ibm.websphere.wlp.maven.plugins</groupId>
                <artifactId>liberty-maven-plugin</artifactId> 
                <version>1.0</version>
                <configuration>
                    <assemblyArchive>/opt/ibm/wlp.zip</assemblyArchive>
                </configuration>
            </plugin>
            ...
  • Configure with Maven artifact name.
    Use the assemblyArtifact parameter to specify the name of the Maven artifact that contains Liberty profile server files. For example:
            ...
            <plugin>
                <groupId>com.ibm.websphere.wlp.maven.plugins</groupId>
                <artifactId>liberty-maven-plugin</artifactId> 
                <version>1.0</version>
                <configuration>
                    <assemblyArtifact> 
                        <groupId>com.ibm.ws.liberty.test</groupId> 
                        <artifactId>liberty-test-server</artifactId>
                        <version>1.0</version>
                        <type>zip</type>
                    </assemblyArtifact>         
                </configuration>
            </plugin>
            ...
    For more information on installing Liberty profile server as a Maven artifact, see Liberty profile: Installation as a Maven artifact.

About this task

You can use the provided Maven plug-in to create, start, stop, and package a Liberty profile server, and test your application on the Liberty profile. Each task is represented by a specific goal in Maven.


Icon that indicates the type of topic Task topic

Terms and conditions for information centers | Feedback


Timestamp icon Last updated: Monday, 21 April 2014
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-express-iseries&topic=twlp_dev_maven
File name: twlp_dev_maven.html