427 lines
16 KiB
XML
427 lines
16 KiB
XML
<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">
|
|
<parent>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-project</artifactId>
|
|
<version>10.0.0-SNAPSHOT</version>
|
|
</parent>
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<artifactId>jetty-distribution</artifactId>
|
|
<name>Jetty :: Distribution Assemblies</name>
|
|
<packaging>pom</packaging>
|
|
|
|
<properties>
|
|
<assembly-directory>${project.build.directory}/distribution</assembly-directory>
|
|
<temp-home-directory>${project.build.directory}/home</temp-home-directory>
|
|
<home-directory>${assembly-directory}/jetty-home</home-directory>
|
|
<base-directory>${assembly-directory}/demo-base</base-directory>
|
|
</properties>
|
|
|
|
<build>
|
|
|
|
<plugins>
|
|
<!--
|
|
Copies the additional distribution content over the unpacked jetty-home
|
|
artifact contents, after the antrun execution that initially populates
|
|
the jetty-distribution directory
|
|
-->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>copy-base-assembly-tree</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>copy-resources</goal>
|
|
</goals>
|
|
<configuration>
|
|
<useBuildFilters>false</useBuildFilters>
|
|
<includeEmptyDirs>true</includeEmptyDirs>
|
|
<outputDirectory>${assembly-directory}</outputDirectory>
|
|
<resources>
|
|
<resource>
|
|
<directory>${basedir}/src/main/resources</directory>
|
|
</resource>
|
|
</resources>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<executions>
|
|
<!--
|
|
The jetty-home artifact is the starting point for the jetty-distribution
|
|
and must happen early in the build process
|
|
-->
|
|
<execution>
|
|
<id>unpack-jetty-home</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>unpack</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-home</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>tar.gz</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${temp-home-directory}</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<excludes>META-INF/**</excludes>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>copy</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>copy</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>test-jetty-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<overWrite>true</overWrite>
|
|
<includes>**</includes>
|
|
<outputDirectory>${base-directory}/webapps</outputDirectory>
|
|
<destFileName>test.war</destFileName>
|
|
</artifactItem>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-jaas-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<overWrite>true</overWrite>
|
|
<includes>**</includes>
|
|
<outputDirectory>${base-directory}/webapps</outputDirectory>
|
|
<destFileName>test-jaas.war</destFileName>
|
|
</artifactItem>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-jndi-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<overWrite>true</overWrite>
|
|
<includes>**</includes>
|
|
<outputDirectory>${base-directory}/webapps</outputDirectory>
|
|
<destFileName>test-jndi.war</destFileName>
|
|
</artifactItem>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-spec-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<overWrite>true</overWrite>
|
|
<includes>**</includes>
|
|
<outputDirectory>${base-directory}/webapps</outputDirectory>
|
|
<destFileName>test-spec.war</destFileName>
|
|
</artifactItem>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-proxy-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<overWrite>true</overWrite>
|
|
<includes>**</includes>
|
|
<outputDirectory>${base-directory}/webapps</outputDirectory>
|
|
<destFileName>javadoc-proxy.war</destFileName>
|
|
</artifactItem>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.example-async-rest</groupId>
|
|
<artifactId>example-async-rest-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<overWrite>true</overWrite>
|
|
<includes>**</includes>
|
|
<outputDirectory>${base-directory}/webapps</outputDirectory>
|
|
<destFileName>async-rest.war</destFileName>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>unpack-test-webapp-config</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>unpack</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>test-jetty-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<classifier>config</classifier>
|
|
<type>jar</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${base-directory}</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<excludes>META-INF/**</excludes>
|
|
</configuration>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>unpack-test-jaas-config</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>unpack</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-jaas-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<classifier>config</classifier>
|
|
<type>jar</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${base-directory}</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<excludes>META-INF/**</excludes>
|
|
</configuration>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>unpack-test-jndi-config</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>unpack</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-jndi-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<classifier>config</classifier>
|
|
<type>jar</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${base-directory}</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<excludes>META-INF/**</excludes>
|
|
</configuration>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>unpack-test-spec-config</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>unpack</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-spec-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<classifier>config</classifier>
|
|
<type>jar</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${base-directory}</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<excludes>META-INF/**</excludes>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>unpack-documentation</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>unpack</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-documentation</artifactId>
|
|
<version>${project.version}</version>
|
|
<classifier>html</classifier>
|
|
<type>zip</type>
|
|
<overWrite>true</overWrite>
|
|
<outputDirectory>${base-directory}/webapps/doc</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>populate distribution from home</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<tasks>
|
|
<copy todir="${home-directory}">
|
|
<fileset dir="${temp-home-directory}/jetty-home-${project.version}/" />
|
|
</copy>
|
|
<copy todir="${assembly-directory}">
|
|
<fileset dir="${home-directory}">
|
|
<include name="NOTICE.txt" />
|
|
<include name="LICENSE.txt" />
|
|
<include name="VERSION.txt" />
|
|
</fileset>
|
|
</copy>
|
|
</tasks>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>set jetty.sh</id>
|
|
<phase>prepare-package</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<tasks>
|
|
<chmod dir="${home-directory}/bin" perm="755" includes="**/*.sh" />
|
|
</tasks>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<executions>
|
|
<!--
|
|
Setup the demo-base using the start.d configuration mechanism
|
|
-->
|
|
<execution>
|
|
<id>setup demo-base-startd</id>
|
|
<phase>package</phase>
|
|
<configuration>
|
|
<mainClass>org.eclipse.jetty.start.Main</mainClass>
|
|
<arguments>
|
|
<argument>jetty.home=${home-directory}</argument>
|
|
<argument>jetty.base=${base-directory}</argument>
|
|
<argument>--create-startd</argument>
|
|
<argument>--add-to-start=server,requestlog,deploy,websocket,ext,resources,client,annotations,jndi,servlets,jsp,jstl,http,https,demo</argument>
|
|
</arguments>
|
|
</configuration>
|
|
<goals>
|
|
<goal>java</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<configuration>
|
|
<descriptors>
|
|
<descriptor>src/main/assembly/jetty-assembly.xml</descriptor>
|
|
</descriptors>
|
|
<tarLongFileMode>posix</tarLongFileMode>
|
|
<appendAssemblyId>false</appendAssemblyId>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>single</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<!-- No point performing PMD in assembly project -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-pmd-plugin</artifactId>
|
|
<configuration>
|
|
<skip>true</skip>
|
|
</configuration>
|
|
</plugin>
|
|
<!-- No point performing Findbugs in assembly project -->
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>findbugs-maven-plugin</artifactId>
|
|
<configuration>
|
|
<skip>true</skip>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<dependencies>
|
|
<!-- For users of jetty-distribution via maven, none of the following
|
|
dependencies should be mandatory to function.
|
|
These only exist to make the reactor sane during the build
|
|
of jetty-distribution itself -->
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-home</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>tar.gz</type>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<!-- demo-base/webapps -->
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>test-jetty-webapp</artifactId>
|
|
<type>war</type>
|
|
<version>${project.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-jaas-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-jndi-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-spec-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty.tests</groupId>
|
|
<artifactId>test-proxy-webapp</artifactId>
|
|
<type>war</type>
|
|
<version>${project.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty.example-async-rest</groupId>
|
|
<artifactId>example-async-rest-webapp</artifactId>
|
|
<version>${project.version}</version>
|
|
<type>war</type>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<!-- documentation -->
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-documentation</artifactId>
|
|
<version>${project.version}</version>
|
|
<classifier>html</classifier>
|
|
<type>zip</type>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
</dependencies>
|
|
</project>
|