blob: abcd66b18b4eff65911c3ca725b1385faa46883d [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to jclouds, Inc. (jclouds) under one or more
contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. jclouds licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.jclouds</groupId>
<artifactId>jclouds-demos-project</artifactId>
<version>1.5.0-SNAPSHOT</version>
</parent>
<artifactId>jclouds-demo-googleappengine</artifactId>
<packaging>war</packaging>
<name>JClouds Sample for Google App Engine</name>
<description>JClouds Sample for Google App Engine</description>
<properties>
<!--
note you must set the property ${appengine.sdk.root} to a valid
extraction of appengine-java-sdk
-->
<appengine.applicationid>jclouds-hpcloud-demo</appengine.applicationid>
<appengine.sdk.version>1.6.5</appengine.sdk.version>
<devappserver.address>localhost</devappserver.address>
<devappserver.port>8088</devappserver.port>
</properties>
<dependencies>
<dependency>
<groupId>org.jclouds</groupId>
<artifactId>jclouds-blobstore</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.jclouds</groupId>
<artifactId>jclouds-compute</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.jclouds.provider</groupId>
<artifactId>hpcloud-objectstorage</artifactId>
<version>${project.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.jclouds.driver</groupId>
<artifactId>jclouds-gae</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.google.inject.extensions</groupId>
<artifactId>guice-servlet</artifactId>
<version>3.0</version>
</dependency>
<!-- Google App Engine API -->
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-1.0-sdk</artifactId>
<version>${appengine.sdk.version}</version>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-tools-sdk</artifactId>
<version>${appengine.sdk.version}</version>
<scope>test</scope>
</dependency>
<!-- WAR Dependencies: need to be validated -->
<dependency>
<groupId>displaytag</groupId>
<artifactId>displaytag</artifactId>
<version>1.2</version>
<scope>runtime</scope>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.5.6</version>
<scope>runtime</scope>
</dependency>
<dependency>
<artifactId>jstl</artifactId>
<groupId>javax.servlet</groupId>
<version>1.1.2</version>
<scope>runtime</scope>
</dependency>
<dependency>
<artifactId>standard</artifactId>
<groupId>taglibs</groupId>
<version>1.1.2</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<artifactId>maven-remote-resources-plugin</artifactId>
<version>1.2</version>
<configuration>
<!-- prevents the maven-war-plugin from including the resources in WEB-INF/classes -->
<attached>false</attached>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<!-- see http://jira.codehaus.org/browse/MWAR-248 -->
<packagingExcludes>WEB-INF/web.xml</packagingExcludes>
<webResources>
<resource>
<directory>src/main/appengine</directory>
<targetPath>WEB-INF</targetPath>
<filtering>true</filtering>
<excludes>
<exclude>.gitignore</exclude>
</excludes>
</resource>
</webResources>
</configuration>
</plugin>
<plugin>
<groupId>com.ning.maven.plugins</groupId>
<artifactId>maven-duplicate-finder-plugin</artifactId>
<version>1.0.3</version>
<configuration>
<exceptions>
<exception>
<!-- Google App Engine Deps, some google classes are duplicated between packages -->
<conflictingDependencies>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-1.0-sdk</artifactId>
<version>1.6.5</version>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-tools-sdk</artifactId>
<version>1.6.5</version>
<scope>test</scope>
</dependency>
</conflictingDependencies>
<packages>
<package>com.google</package>
</packages>
</exception>
<exception>
<!-- Tomcat bundles the JSR250 annotations too -->
<conflictingDependencies>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>jsr250-api</artifactId>
<version>1.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>annotations-api</artifactId>
<version>6.0.32</version>
<scope>test</scope>
</dependency>
</conflictingDependencies>
<packages>
<package>javax.annotation</package>
</packages>
</exception>
<exception>
<!-- commons-beanutils and commons-collections duplicate classes -->
<conflictingDependencies>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.7.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.1</version>
<scope>runtime</scope>
</dependency>
</conflictingDependencies>
<packages>
<package>org.apache.commons.collections</package>
</packages>
</exception>
<exception>
<!-- javax.servlet is included in the appengine-tools-sdk, with Tomcat and Jetty -->
<conflictingDependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-tools-sdk</artifactId>
<version>1.6.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>servlet-api</artifactId>
<version>6.0.32</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-runner</artifactId>
<version>7.5.4.v20111024</version>
<scope>test</scope>
</dependency>
</conflictingDependencies>
<packages>
<package>javax.servlet</package>
</packages>
<resources>
<!-- javax.servlet is included in the appengine-tools-sdk and Tomcat -->
<resource>javax/servlet/resources/XMLSchema.dtd</resource>
<resource>javax/servlet/resources/datatypes.dtd</resource>
<resource>javax/servlet/resources/j2ee_1_4.xsd</resource>
<resource>javax/servlet/resources/j2ee_web_services_client_1_1.xsd</resource>
<resource>javax/servlet/resources/javaee_5.xsd</resource>
<resource>javax/servlet/resources/javaee_web_services_client_1_2.xsd</resource>
<resource>javax/servlet/resources/jsp_2_0.xsd</resource>
<resource>javax/servlet/resources/jsp_2_1.xsd</resource>
<resource>javax/servlet/resources/web-app_2_2.dtd</resource>
<resource>javax/servlet/resources/web-app_2_3.dtd</resource>
<resource>javax/servlet/resources/web-app_2_4.xsd</resource>
<resource>javax/servlet/resources/web-app_2_5.xsd</resource>
<resource>javax/servlet/resources/xml.xsd</resource>
<resource>javax/servlet/LocalStrings.properties</resource>
<resource>javax/servlet/LocalStrings_fr.properties</resource>
<resource>javax/servlet/LocalStrings_ja.properties</resource>
<resource>javax/servlet/http/LocalStrings.properties</resource>
<resource>javax/servlet/http/LocalStrings_es.properties</resource>
<resource>javax/servlet/http/LocalStrings_fr.properties</resource>
<resource>javax/servlet/http/LocalStrings_ja.properties</resource>
</resources>
</exception>
<exception>
<!-- Jasper and Catalina duplicate some classes -->
<conflictingDependencies>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>catalina</artifactId>
<version>6.0.32</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>jasper</artifactId>
<version>6.0.32</version>
<scope>test</scope>
</dependency>
</conflictingDependencies>
<classes>
<class>org.apache.AnnotationProcessor</class>
<class>org.apache.PeriodicEventListener</class>
</classes>
</exception>
<exception>
<!-- Jetty Runner includes taglibs and jstl -->
<conflictingDependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.1.2</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-runner</artifactId>
<version>7.5.4.v20111024</version>
<scope>test</scope>
</dependency>
</conflictingDependencies>
<packages>
<package>javax.servlet.jsp.jstl</package>
<package>org.apache.taglibs</package>
</packages>
<resources>
<resource>META-INF/c-1_0-rt.tld</resource>
<resource>META-INF/c-1_0.tld</resource>
<resource>META-INF/c.tld</resource>
<resource>META-INF/fmt-1_0-rt.tld</resource>
<resource>META-INF/fmt-1_0.tld</resource>
<resource>META-INF/fmt.tld</resource>
<resource>META-INF/fn.tld</resource>
<resource>META-INF/permittedTaglibs.tld</resource>
<resource>META-INF/scriptfree.tld</resource>
<resource>META-INF/sql-1_0-rt.tld</resource>
<resource>META-INF/sql-1_0.tld</resource>
<resource>META-INF/sql.tld</resource>
<resource>META-INF/x-1_0-rt.tld</resource>
<resource>META-INF/x-1_0.tld</resource>
<resource>META-INF/x.tld</resource>
<resource>org/apache/taglibs/standard/lang/jstl/Resources.properties</resource>
<resource>org/apache/taglibs/standard/lang/jstl/Resources_ja.properties</resource>
<resource>org/apache/taglibs/standard/resources/Resources.properties</resource>
<resource>org/apache/taglibs/standard/resources/Resources_ja.properties</resource>
</resources>
</exception>
</exceptions>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>live</id>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<executions>
<execution>
<id>integration</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<systemPropertyVariables>
<!-- note you can add support for new clouds by adding more entries here
after adding maven dependency -->
<test.hpcloud-objectstorage.identity>${test.hpcloud-objectstorage.identity}</test.hpcloud-objectstorage.identity>
<test.hpcloud-objectstorage.credential>${test.hpcloud-objectstorage.credential}</test.hpcloud-objectstorage.credential>
<appengine.sdk.root>${appengine.sdk.root}</appengine.sdk.root>
<devappserver.address>${devappserver.address}</devappserver.address>
<devappserver.port>${devappserver.port}</devappserver.port>
<warfile>${project.build.directory}/${project.artifactId}</warfile>
</systemPropertyVariables>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>deploy</id>
<build>
<plugins>
<plugin>
<groupId>net.kindleit</groupId>
<artifactId>maven-gae-plugin</artifactId>
<version>0.9.2</version>
<configuration>
<serverId>google-appengine</serverId>
<sdkDir>${appengine.sdk.root}</sdkDir>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>