mirror of
https://github.com/jenkinsci/jenkins.git
synced 2026-11-04 07:35:53 +00:00
git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@4959 71c3de6d-444a-0410-be80-ed276b4c234a
398 lines
13 KiB
XML
398 lines
13 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">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<parent>
|
|
<groupId>org.jvnet.hudson.main</groupId>
|
|
<artifactId>pom</artifactId>
|
|
<version>1.145-SNAPSHOT</version>
|
|
<relativePath>../pom.xml</relativePath>
|
|
</parent>
|
|
|
|
<artifactId>hudson-war</artifactId>
|
|
<packaging>war</packaging>
|
|
<name>Hudson war</name>
|
|
|
|
<build>
|
|
<directory>target</directory>
|
|
<finalName>hudson</finalName>
|
|
|
|
<plugins>
|
|
<plugin>
|
|
<artifactId>maven-war-plugin</artifactId>
|
|
<version>2.0</version>
|
|
<configuration>
|
|
<webResources>
|
|
<resource>
|
|
<directory>${basedir}/resources</directory>
|
|
</resource>
|
|
<resource>
|
|
<directory>${basedir}/target/generated-resources</directory>
|
|
</resource>
|
|
</webResources>
|
|
<!-- for putting Main-Class into war -->
|
|
<archive>
|
|
<manifest>
|
|
<mainClass>Main</mainClass>
|
|
</manifest>
|
|
</archive>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
<executions>
|
|
<!-- compile src/launcher/java/Main.java into hudson.war -->
|
|
<execution>
|
|
<phase>generate-resources</phase>
|
|
<configuration>
|
|
<tasks>
|
|
<mkdir dir="target/generated-resources" />
|
|
<!-- needs to be forked because Maven doesn't seem to put tools.jar in classpath -->
|
|
<javac srcdir="src/launcher/java" includes="*.java" source="1.4" target="1.4" destdir="target/generated-resources" fork="true" debug="on" />
|
|
</tasks>
|
|
</configuration>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
</execution>
|
|
<!-- sign the war -->
|
|
<execution>
|
|
<id>signWar</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<tasks>
|
|
<!-- see ../jnlp-agent/pom.xml for details -->
|
|
<signjar jar="target/hudson.war" alias="${hudson.sign.alias}" keystore="${hudson.sign.keystore}" storepass="${hudson.sign.storepass}" />
|
|
</tasks>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>dependency-maven-plugin</artifactId>
|
|
<executions>
|
|
<!-- for copying remoting jar to $WAR/WEB-INF/slave.jar -->
|
|
<execution>
|
|
<id>copy-slave.jar</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>copy</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.jvnet.hudson.main</groupId>
|
|
<artifactId>remoting</artifactId>
|
|
<version>${version}</version>
|
|
<destFileName>slave.jar</destFileName>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<outputDirectory>${basedir}/target/generated-resources/WEB-INF</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
<!--
|
|
for copying remoting jar to $WAR/WEB-INF/remoting.jar
|
|
-->
|
|
<execution>
|
|
<id>copy-remoting.jar</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>copy</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.jvnet.hudson.main</groupId>
|
|
<artifactId>remoting</artifactId>
|
|
<version>${version}</version>
|
|
<destFileName>remoting.jar</destFileName>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<outputDirectory>${basedir}/target/generated-resources/WEB-INF</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
<!-- for copying remoting jar to $WAR/WEB-INF/jnlp-agent.jar -->
|
|
<execution>
|
|
<id>copy-jnlp-agent.jar</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>copy</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.jvnet.hudson.main</groupId>
|
|
<artifactId>jnlp-agent</artifactId>
|
|
<version>${version}</version>
|
|
<destFileName>jnlp-agent.jar</destFileName>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<outputDirectory>${basedir}/target/generated-resources/WEB-INF</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
<!-- for copying winstone.jar -->
|
|
<execution>
|
|
<id>copy-winstone.jar</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>copy</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>winstone</groupId>
|
|
<artifactId>winstone</artifactId>
|
|
<version>0.9.9</version>
|
|
<destFileName>winstone.jar</destFileName>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
<outputDirectory>${basedir}/target/generated-resources</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.mortbay.jetty</groupId>
|
|
<artifactId>maven-jetty-plugin</artifactId>
|
|
<version>6.1.2rc2</version>
|
|
<configuration>
|
|
<contextPath>/</contextPath>
|
|
<!--
|
|
read directly from core module's output directory,
|
|
so that changes are picked up right away without running mvn.
|
|
-->
|
|
<classesDirectory>../core/target/classes</classesDirectory>
|
|
<!--
|
|
enable automatic reloading when some files change.
|
|
-->
|
|
<!--scanIntervalSeconds>1</scanIntervalSeconds-->
|
|
<webAppSourceDirectory>${basedir}/resources</webAppSourceDirectory>
|
|
<userRealms>
|
|
<userRealm implementation="org.mortbay.jetty.security.HashUserRealm">
|
|
<name>default</name>
|
|
<config>src/realm.properties</config>
|
|
</userRealm>
|
|
</userRealms>
|
|
<systemProperties>
|
|
<systemProperty>
|
|
<name>HUDSON_HOME</name>
|
|
<value>${HUDSON_HOME}</value>
|
|
</systemProperty>
|
|
<systemProperty>
|
|
<!-- always reload views during debugging -->
|
|
<name>stapler.jelly.noCache</name>
|
|
<value>true</value>
|
|
</systemProperty>
|
|
<systemProperty>
|
|
<!-- load view resources from the source directly, again for real time change -->
|
|
<name>stapler.resourcePath</name>
|
|
<value>../core/src/main/resources</value>
|
|
</systemProperty>
|
|
</systemProperties>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.jvnet.hudson.main</groupId>
|
|
<artifactId>jnlp-agent</artifactId>
|
|
<version>${project.version}</version>
|
|
<!--
|
|
not really a test scope, but we use dependency-maven-plugin to copy this jar,
|
|
so we don't want this to be bundled in war by maven-war-plugin.
|
|
-->
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.jvnet.hudson.main</groupId>
|
|
<artifactId>hudson-core</artifactId>
|
|
<version>${project.version}</version>
|
|
<exclusions>
|
|
<!-- jars that are not needed in war -->
|
|
<exclusion>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>servlet-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>xalan</groupId>
|
|
<artifactId>xalan</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>jsp-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>xerces</groupId>
|
|
<artifactId>xercesImpl</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>xml-apis</groupId>
|
|
<artifactId>xml-apis</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>xerces</groupId>
|
|
<artifactId>xmlParserAPIs</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>msv</groupId>
|
|
<artifactId>xsdlib</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>msv</groupId>
|
|
<artifactId>relaxngDatatype</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>forehead</groupId>
|
|
<artifactId>forehead</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>jdom</groupId>
|
|
<artifactId>jdom</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>xom</groupId>
|
|
<artifactId>xom</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>commons-cli</groupId>
|
|
<artifactId>commons-cli</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>commons-discovery</groupId>
|
|
<artifactId>commons-discovery</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>commons-jelly</groupId>
|
|
<artifactId>commons-jelly-tags-junit</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>jaxme</groupId>
|
|
<artifactId>jaxme-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>stax</groupId>
|
|
<artifactId>stax-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>pull-parser</groupId>
|
|
<artifactId>pull-parser</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<properties>
|
|
<HUDSON_HOME>${basedir}/work</HUDSON_HOME>
|
|
</properties>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>hudson-libs-local</id>
|
|
<!-- if we have the libs checked out of CVS, use them directly -->
|
|
<activation>
|
|
<file>
|
|
<exists>main/lib</exists>
|
|
</file>
|
|
</activation>
|
|
<repositories>
|
|
<!-- checking the file system is fastest of all -->
|
|
<repository>
|
|
<id>hudson-libs</id>
|
|
<url>file:main/lib</url>
|
|
<layout>legacy</layout>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<updatePolicy>always</updatePolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
<!-- put central second to speed majority artifact resolution -->
|
|
<repository>
|
|
<id>central</id>
|
|
<url>http://repo1.maven.org/maven2</url>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<!-- only look for jars here when they are not present locally -->
|
|
<updatePolicy>never</updatePolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
<!-- last, but not least -->
|
|
<repository>
|
|
<id>java.net2</id>
|
|
<url>http://download.java.net/maven/2</url>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<updatePolicy>never</updatePolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
</repositories>
|
|
</profile>
|
|
<profile>
|
|
<id>hudson-libs-remote</id>
|
|
<!-- otherwise, we'll have to use the slower route -->
|
|
<activation>
|
|
<file>
|
|
<missing>main/lib</missing>
|
|
</file>
|
|
</activation>
|
|
<repositories>
|
|
<!-- put central first to speed majority artifact resolution -->
|
|
<repository>
|
|
<id>central</id>
|
|
<url>http://repo1.maven.org/maven2</url>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<!-- only look for jars here when they are not present locally -->
|
|
<updatePolicy>never</updatePolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
<!-- put java.net2 second, as it's faster than the https CVS access -->
|
|
<repository>
|
|
<id>java.net2</id>
|
|
<url>http://download.java.net/maven/2/</url>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<updatePolicy>never</updatePolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
<!-- put hudson-libs last as it is the slowest to access -->
|
|
<repository>
|
|
<id>hudson-libs</id>
|
|
<url>https://hudson.dev.java.net/source/browse/*checkout*/hudson/hudson/main/lib</url>
|
|
<layout>legacy</layout>
|
|
<releases>
|
|
<enabled>true</enabled>
|
|
<updatePolicy>never</updatePolicy>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
</repositories>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|