Add setup profile

Add a setup profile allowing the maven plugin to be build alone.
Required to prevent 'unresolveable build extension' errors on a
fresh checkout.

Issue: #52091115
This commit is contained in:
Phillip Webb 2013-06-20 17:24:47 -07:00
parent 51f312f77d
commit 56bfa30b2c
5 changed files with 123 additions and 110 deletions

205
pom.xml
View File

@ -9,15 +9,6 @@
<prerequisites>
<maven>3.0.0</maven>
</prerequisites>
<modules>
<module>spring-bootstrap</module>
<module>spring-bootstrap-actuator</module>
<module>spring-bootstrap-cli</module>
<module>spring-bootstrap-launcher</module>
<module>spring-bootstrap-maven-plugin</module>
<module>spring-bootstrap-samples</module>
<module>spring-bootstrap-starters</module>
</modules>
<properties>
<java.version>1.6</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@ -71,92 +62,6 @@
</snapshotRepository>
</distributionManagement>
<profiles>
<profile>
<id>staging</id>
<distributionManagement>
<site>
<id>spring-site-staging</id>
<url>file:///${java.io.tmpdir}/spring-bootstrap/docs</url>
</site>
<repository>
<id>spring-milestone-staging</id>
<url>file:///${java.io.tmpdir}/spring-bootstrap/milestone</url>
</repository>
<snapshotRepository>
<id>spring-snapshot-staging</id>
<url>file:///${java.io.tmpdir}/spring-bootstrap/snapshot</url>
</snapshotRepository>
</distributionManagement>
</profile>
<profile>
<id>milestone</id>
<distributionManagement>
<repository>
<id>spring-repo-milestone</id>
<name>Spring Milestone Repository</name>
<url>https://repo.springsource.org/libs-milestone-local</url>
</repository>
</distributionManagement>
</profile>
<profile>
<id>central</id>
<distributionManagement>
<snapshotRepository>
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus Snapshots</name>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</snapshotRepository>
<repository>
<id>sonatype-nexus-staging</id>
<name>Nexus Release Repository</name>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>bootstrap</id>
<!-- deactivate when released -->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>http://maven.springframework.org/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>http://maven.springframework.org/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
<build>
<pluginManagement>
<plugins>
@ -658,4 +563,114 @@
<scope>test</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>setup</id>
<modules>
<module>spring-bootstrap-launcher</module>
<module>spring-bootstrap-maven-plugin</module>
</modules>
</profile>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<modules>
<module>spring-bootstrap</module>
<module>spring-bootstrap-actuator</module>
<module>spring-bootstrap-cli</module>
<module>spring-bootstrap-launcher</module>
<module>spring-bootstrap-maven-plugin</module>
<module>spring-bootstrap-samples</module>
<module>spring-bootstrap-starters</module>
</modules>
</profile>
<profile>
<id>staging</id>
<distributionManagement>
<site>
<id>spring-site-staging</id>
<url>file:///${java.io.tmpdir}/spring-bootstrap/docs</url>
</site>
<repository>
<id>spring-milestone-staging</id>
<url>file:///${java.io.tmpdir}/spring-bootstrap/milestone</url>
</repository>
<snapshotRepository>
<id>spring-snapshot-staging</id>
<url>file:///${java.io.tmpdir}/spring-bootstrap/snapshot</url>
</snapshotRepository>
</distributionManagement>
</profile>
<profile>
<id>milestone</id>
<distributionManagement>
<repository>
<id>spring-repo-milestone</id>
<name>Spring Milestone Repository</name>
<url>https://repo.springsource.org/libs-milestone-local</url>
</repository>
</distributionManagement>
</profile>
<profile>
<id>central</id>
<distributionManagement>
<snapshotRepository>
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus Snapshots</name>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</snapshotRepository>
<repository>
<id>sonatype-nexus-staging</id>
<name>Nexus Release Repository</name>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>bootstrap</id>
<!-- deactivate when released -->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>http://maven.springframework.org/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>http://maven.springframework.org/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
</project>

View File

@ -18,9 +18,9 @@
</build>
<dependencies>
<dependency>
<groupId>@project.groupId@</groupId>
<artifactId>spring-bootstrap</artifactId>
<version>@project.version@</version>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>

View File

@ -18,9 +18,9 @@
</build>
<dependencies>
<dependency>
<groupId>@project.groupId@</groupId>
<artifactId>spring-bootstrap</artifactId>
<version>@project.version@</version>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>

View File

@ -24,9 +24,6 @@ import java.util.jar.Manifest;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import org.springframework.bootstrap.launcher.JarLauncher;
import org.springframework.bootstrap.launcher.WarLauncher;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@ -110,7 +107,7 @@ public class Verify {
protected void verifyZipEntries(ZipFile zipFile, Map<String, ZipEntry> entries)
throws Exception {
super.verifyZipEntries(zipFile, entries);
assertHasEntryNameStartingWith(entries, "lib/spring-bootstrap");
assertHasEntryNameStartingWith(entries, "lib/spring-context");
assertHasEntryNameStartingWith(entries, "lib/spring-core");
assertHasEntryNameStartingWith(entries, "lib/javax.servlet-api-3.0.1.jar");
assertTrue("Unpacked launcher classes", entries.containsKey("org/"
@ -121,8 +118,8 @@ public class Verify {
@Override
protected void verifyManifest(Manifest manifest) throws Exception {
assertEquals(JarLauncher.class.getName(), manifest.getMainAttributes()
.getValue("Main-Class"));
assertEquals("org.springframework.bootstrap.launcher.JarLauncher", manifest
.getMainAttributes().getValue("Main-Class"));
assertEquals("org.test.SampleApplication", manifest.getMainAttributes()
.getValue("Start-Class"));
}
@ -138,7 +135,7 @@ public class Verify {
protected void verifyZipEntries(ZipFile zipFile, Map<String, ZipEntry> entries)
throws Exception {
super.verifyZipEntries(zipFile, entries);
assertHasEntryNameStartingWith(entries, "WEB-INF/lib/spring-bootstrap");
assertHasEntryNameStartingWith(entries, "WEB-INF/lib/spring-context");
assertHasEntryNameStartingWith(entries, "WEB-INF/lib/spring-core");
assertHasEntryNameStartingWith(entries,
"WEB-INF/lib-provided/javax.servlet-api-3.0.1.jar");
@ -151,8 +148,8 @@ public class Verify {
@Override
protected void verifyManifest(Manifest manifest) throws Exception {
assertEquals(WarLauncher.class.getName(), manifest.getMainAttributes()
.getValue("Main-Class"));
assertEquals("org.springframework.bootstrap.launcher.WarLauncher", manifest
.getMainAttributes().getValue("Main-Class"));
assertEquals("org.test.SampleApplication", manifest.getMainAttributes()
.getValue("Start-Class"));
}

View File

@ -0,0 +1 @@
/target