blob: fee3cc13e5213900f4fc4c9df18edf4425e4435e [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<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>org.apache.struts</groupId>
<artifactId>struts-examples</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>rest-angular</artifactId>
<packaging>war</packaging>
<name>REST Plugin based application with AngularJS</name>
<description>A REST Plugin based Struts2 application with AngularJS frontend, Bean validation, Exception Handling and multi language support.</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-convention-plugin</artifactId>
<version>${struts2.version}</version>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-rest-plugin</artifactId>
<version>${struts2.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.3.13.RELEASE</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-junit-plugin</artifactId>
<version>${struts2.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-bean-validation-plugin</artifactId>
<version>${struts2.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.2.Final</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<version>2.0.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.cj.jshintmojo</groupId>
<artifactId>jshint-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>lint</goal>
</goals>
</execution>
</executions>
<configuration>
<configFile>src/main/resources/jshint.conf.js</configFile>
<directories>
<directory>src/main/webapp/js/</directory>
</directories>
<excludes>
<exclude>src/main/webapp/js/lib</exclude>
</excludes>
<reporter>jslint</reporter>
<reportFile>target/jshint.xml</reportFile>
<failOnError>true</failOnError>
</configuration>
</plugin>
<plugin>
<groupId>com.samaxes.maven</groupId>
<artifactId>minify-maven-plugin</artifactId>
<version>1.7.4</version>
<executions>
<execution>
<id>external-minify</id>
<phase>package</phase>
<configuration>
<jsEngine>CLOSURE</jsEngine>
<closureLanguage>ECMASCRIPT5_STRICT</closureLanguage>
<skipMinify>true</skipMinify>
<jsFinalFile>external.js</jsFinalFile>
<jsSourceFiles>
<jsSourceFile>lib/angular/angular.min.js</jsSourceFile>
<jsSourceFile>lib/angular/angular-route.min.js</jsSourceFile>
<jsSourceFile>lib/ui-bootstrap-tpls-1.3.2.min.js</jsSourceFile>
<jsSourceFile>lib/angular-translate.min.js</jsSourceFile>
<jsSourceFile>lib/angular-translate-loader-url.min.js</jsSourceFile>
</jsSourceFiles>
</configuration>
<goals>
<goal>minify</goal>
</goals>
</execution>
<execution>
<id>application-minify</id>
<phase>package</phase>
<configuration>
<jsEngine>CLOSURE</jsEngine>
<closureLanguage>ECMASCRIPT5_STRICT</closureLanguage>
<jsFinalFile>application.js</jsFinalFile>
<jsSourceFiles>
<jsSourceFile>app.js</jsSourceFile>
<jsSourceFile>config.js</jsSourceFile>
</jsSourceFiles>
<jsSourceIncludes>
<jsSourceInclude>services/*.js</jsSourceInclude>
<jsSourceInclude>controllers/*.js</jsSourceInclude>
</jsSourceIncludes>
</configuration>
<goals>
<goal>minify</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>${jetty-plugin.version}</version>
<configuration>
<webApp>
<contextPath>/${project.artifactId}</contextPath>
</webApp>
<stopKey>CTRL+C</stopKey>
<stopPort>8999</stopPort>
<scanIntervalSeconds>10</scanIntervalSeconds>
</configuration>
</plugin>
</plugins>
</build>
</project>