Skip to content

Commit

Permalink
Merge pull request #7 from WASdev/Development
Browse files Browse the repository at this point in the history
Development
  • Loading branch information
Alexis Resendiz Andrade committed Mar 1, 2016
2 parents 38607b6 + a3d19f2 commit e300d7f
Show file tree
Hide file tree
Showing 126 changed files with 2,744 additions and 1,071 deletions.
10 changes: 3 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
*/target/**
*/.settings/*
*/.project/*
.metadata
/.settings/
/target/
/.project
*.project
.settings/
target/
74 changes: 44 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,56 @@
ci.maven.tools
==============

Collection of Maven archetypes and target pom's for developing Java EE and OSGi applications targetting the WebSphere Application Server Liberty Profile within the WDT Eclipse IDE.
ci.maven.tools is a collection of Maven archetypes and target POMs for developing Java EE and OSGi applications targeting WebSphere Application Server Liberty within the WDT Eclipse IDE.

## Maven Target Pom's
##Projects

### liberty-target
There are provided two different projects to be used in Maven environments: [Maven Target POMs](#maven-target-poms), a set of convenience POMs that groups WebSphere Liberty dependencies; and [Maven archetypes](#archetypes), to create new Maven projects with recommended configurations and dependencies targeting WebSphere Liberty.

#### Usage: Add the following dependency to your application pom.xml to represent the Liberty and spec API libraries
### [Maven Target POM's](/docs/target-poms.md)

<dependency>
<groupId>net.wasdev.maven.tools</groupId>
<artifactId>liberty-target</artifactId>
<version>LATEST</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
### liberty-target-impl
Project containing convenience POMs that groups a set of WebSphere Liberty APIs/SPIs, java specifications and third-party dependencies provided by the runtime.

#### Usage: Add the following dependency to your application pom.xml to represent the Liberty 3rd Party implementation API libraries
Following are the provided modules for this project:

<dependency>
<groupId>net.wasdev.maven.tools</groupId>
<artifactId>liberty-target-impl</artifactId>
<version>LATEST</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
* [liberty-target](/docs/target-poms.md#liberty-target) - Creates a POM that provides references to all modules (APIs/SPIs, java specifications and third-party implementations).
* [liberty-apis](/docs/target-poms.md#liberty-apis) - Creates a POM with Liberty API dependencies.
* [liberty-spis](/docs/target-poms.md#liberty-spis) - Creates a POM with Liberty SPI dependencies.
* [java-specs](/docs/target-poms.md#java-specs) - Creates a POM with Java specification dependencies that a Liberty installation provides in the `dev/api/spec` and `/dev/spi/spec` folders.
* [third-party](/docs/target-poms.md#third-party) - Creates a POM with third-party dependencies that a Liberty installation provides in the `dev/api/third-party` and `/dev/spi/third-party` folders.

## Archetypes
### [Archetypes](/docs/archetypes.md)

Project with Maven archetypes for creating new Java EE and OSGi projects targeting WebSphere Liberty within the WDT Eclipse IDE.

#### Java EE archetypes

Archetype | Project type
----------------------- | ------------
ejb-jee5-liberty | EJB 3.0 project
ejb-jee6-liberty | EJB 3.1 project
ejb-jee7-liberty | EJB 3.2 project
webapp-jee5-liberty | Web 2.5 project
webapp-jee6-liberty | Web 3.0 project
webapp-jee7-liberty | Web 3.1 project

#### OSGi Enterprise archetypes

Archetype | Project type
----------------------- | ------------
osgi-liberty | OSGi project
osgi-web25-liberty | OSGi Web 2.5 project
osgi-web30-liberty | OSGi Web 3.0 project
osgi-web31-liberty | OSGi Web 3.1 project

##How to build

To build and install the whole project in your local Maven repository, locate in the root folder and then execute one of the following commands in a Maven terminal.

* `mvn install`: installs the archetypes and target POMs into your local Maven repository.
* `mvn install -DskipTests`: installs the archetypes and target POMs into your local Maven repository without executing testing.

### liberty-ejb31-archetype - Creates EJB 3.1 Module Project targeting Liberty profile
### liberty-ejb32-archetype - Creates EJB 3.2 Module Project targeting Liberty profile
### liberty-osgi-ejb30-archetype - Creates OSGi with EJB 3.0 Bundle Project targeting Liberty profile
### liberty-osgi-ejb31-archetype - Creates OSGi with EJB 3.1 Bundle Project targeting Liberty profile
### liberty-osgi-web30-archetype - Creates OSGi with Servlet 3.0 Web Application Bundle Project targeting Liberty profile
### liberty-osgi-web31-archetype - Creates OSGi with Servlet 3.1 Web Application Bundle Project targeting Liberty profile
### liberty-web30-archetype - Creates Servlet 3.0 Web Application Module Project targeting Liberty profile
### liberty-web31-archetype - Creates Servlet 3.1 Web Application Module Project targeting Liberty profile
Notice:

* Require of Apache Maven 2.x or later.
* There's an Apache Maven issue related to archetype testing in Maven 3.3.x versions. You can workaround this, by creating a copy of "mvn.cmd" named "mvn.bat" in MAVEN_HOME/bin. For more details, see: https://issues.apache.org/jira/browse/ARCHETYPE-488
18 changes: 18 additions & 0 deletions archetypes/ejb-jee5-liberty/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>net.wasdev.maven.tools.parents</groupId>
<artifactId>archetypes-parent</artifactId>
<version>1.0</version>
</parent>

<groupId>net.wasdev.maven.tools.archetypes</groupId>
<artifactId>ejb-jee5-liberty</artifactId>
<version>1.0</version>
<packaging>maven-archetype</packaging>

<name>EJB 3.0 project archetype</name>
<description>EJB 3.0 project targeting WebSphere Liberty</description>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<archetype-descriptor
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
partial="false" name="EJB 3.0 project targeting WebSphere Liberty">

<requiredProperties>
<requiredProperty key="libertyVersion">
<defaultValue>RELEASE</defaultValue>
</requiredProperty>
</requiredProperties>

<fileSets>
<fileSet filtered="true" packaged="false">
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="true">
<directory>src/main/java</directory>
</fileSet>
</fileSets>

</archetype-descriptor>
Original file line number Diff line number Diff line change
Expand Up @@ -23,35 +23,33 @@

<dependencies>
<dependency>
<groupId>net.wasdev.maven.tools</groupId>
<groupId>net.wasdev.maven.tools.targets</groupId>
<artifactId>liberty-target</artifactId>
<version>LATEST</version>
<version>${libertyVersion}</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
</dependencies>


<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ejb-plugin</artifactId>
<version>2.1</version>
<configuration>
<ejbVersion>3.2</ejbVersion>
<ejbVersion>3.0</ejbVersion>
</configuration>
</plugin>

</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#Simple test that verifies creation and packaging of a new Maven EJB project
#with ejb-jee5-liberty archetype

groupId=net.wasdev.maven.tools.archetypes.tests
artifactId=ejb-jee5-liberty-test
version=1.0-SNAPSHOT
package=net.wasdev.tests
libertyVersion=RELEASE
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>https://raw.github.com/WASdev/ci.maven.tools/master/LICENSE</url>
<distribution>repo</distribution>
</license>
</licenses>

<modelVersion>4.0.0</modelVersion>

<groupId>net.wasdev.maven.tools.archetypes.tests</groupId>
<artifactId>ejb-jee5-liberty-test</artifactId>
<packaging>ejb</packaging>
<version>1.0-SNAPSHOT</version>

<name>ejb-jee5-liberty-test</name>
<url>http://maven.apache.org</url>

<dependencies>
<dependency>
<groupId>net.wasdev.maven.tools.targets</groupId>
<artifactId>liberty-target</artifactId>
<version>RELEASE</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ejb-plugin</artifactId>
<version>2.1</version>
<configuration>
<ejbVersion>3.0</ejbVersion>
</configuration>
</plugin>
</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*
!.gitignore
18 changes: 18 additions & 0 deletions archetypes/ejb-jee6-liberty/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>net.wasdev.maven.tools.parents</groupId>
<artifactId>archetypes-parent</artifactId>
<version>1.0</version>
</parent>

<groupId>net.wasdev.maven.tools.archetypes</groupId>
<artifactId>ejb-jee6-liberty</artifactId>
<version>1.0</version>
<packaging>maven-archetype</packaging>

<name>EJB 3.1 project archetype</name>
<description>EJB 3.1 project targeting WebSphere Liberty</description>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<archetype-descriptor
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
partial="false" name="EJB 3.1 project targeting WebSphere Liberty">

<requiredProperties>
<requiredProperty key="libertyVersion">
<defaultValue>RELEASE</defaultValue>
</requiredProperty>
</requiredProperties>

<fileSets>
<fileSet filtered="true" packaged="false">
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="true">
<directory>src/main/java</directory>
</fileSet>
</fileSets>

</archetype-descriptor>
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,14 @@

<dependencies>
<dependency>
<groupId>net.wasdev.maven.tools</groupId>
<groupId>net.wasdev.maven.tools.targets</groupId>
<artifactId>liberty-target</artifactId>
<version>LATEST</version>
<version>${libertyVersion}</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
</dependencies>


<build>
<plugins>
<plugin>
Expand All @@ -51,7 +50,6 @@
<ejbVersion>3.1</ejbVersion>
</configuration>
</plugin>

</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#Simple test that verifies creation and packaging of a new Maven EJB project
#with ejb-jee6-liberty archetype

groupId=net.wasdev.maven.tools.archetypes.tests
artifactId=ejb-jee6-liberty-test
version=1.0-SNAPSHOT
package=net.wasdev.tests
libertyVersion=RELEASE
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package
Loading

0 comments on commit e300d7f

Please sign in to comment.