| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF 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/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| |
| <parent> |
| <groupId>org.apache.edgent</groupId> |
| <artifactId>edgent-platforms</artifactId> |
| <version>1.3.0-SNAPSHOT</version> |
| </parent> |
| |
| <groupId>org.apache.edgent.java7</groupId> |
| <artifactId>edgent-platforms-java7</artifactId> |
| <packaging>pom</packaging> |
| |
| <name>Apache Edgent (Java 7): Platforms: Java7</name> |
| |
| <properties> |
| <!-- The 9.2 version is the last to support Java7 --> |
| <jetty.version>9.2.21.v20170120</jetty.version> |
| </properties> |
| |
| <modules> |
| <!-- Real modules --> |
| |
| <!-- Repacked modules --> |
| <module>analytics</module> |
| <module>api</module> |
| <module>apps</module> |
| <module>connectors</module> |
| <module>console</module> |
| <module>providers</module> |
| <module>runtime</module> |
| <module>spi</module> |
| <module>test</module> |
| <module>utils</module> |
| </modules> |
| |
| <build> |
| <plugins> |
| <!-- Convert the Java8 classes to Java7 classes --> |
| <plugin> |
| <groupId>net.orfjackal.retrolambda</groupId> |
| <artifactId>retrolambda-maven-plugin</artifactId> |
| <version>2.5.1</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>process-main</goal> |
| <goal>process-test</goal> |
| </goals> |
| <configuration> |
| <!-- I was getting random failures if not running retrolambda in a separate process --> |
| <fork>true</fork> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <includes> |
| <include>**/*Test.class</include> |
| </includes> |
| <testClassesDirectory>${project.build.testOutputDirectory}</testClassesDirectory> |
| </configuration> |
| </plugin> |
| <!-- Check artifacts against Java7 signatures --> |
| <!-- |
| Let the plugin run in the process-test-classes so we immediately know if |
| test run problems could be related to using APIs unavailable to Java7. |
| --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>animal-sniffer-maven-plugin</artifactId> |
| <version>1.15</version> |
| <executions> |
| <execution> |
| <id>check-jdk-signatures</id> |
| <phase>process-test-classes</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <signature> |
| <groupId>org.codehaus.mojo.signature</groupId> |
| <artifactId>java17</artifactId> |
| <version>1.0</version> |
| </signature> |
| </configuration> |
| </plugin> |
| </plugins> |
| <pluginManagement> |
| <plugins> |
| <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> |
| <plugin> |
| <groupId>org.eclipse.m2e</groupId> |
| <artifactId>lifecycle-mapping</artifactId> |
| <version>1.0.0</version> |
| <configuration> |
| <lifecycleMappingMetadata> |
| <pluginExecutions> |
| <pluginExecution> |
| <pluginExecutionFilter> |
| <groupId> |
| net.orfjackal.retrolambda |
| </groupId> |
| <artifactId> |
| retrolambda-maven-plugin |
| </artifactId> |
| <versionRange> |
| [2.5.1,) |
| </versionRange> |
| <goals> |
| <goal>process-main</goal> |
| <goal>process-test</goal> |
| </goals> |
| </pluginExecutionFilter> |
| <action> |
| <ignore></ignore> |
| </action> |
| </pluginExecution> |
| </pluginExecutions> |
| </lifecycleMappingMetadata> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| |
| <profiles> |
| <!-- Additionally build the binary distribution package. --> |
| <profile> |
| <id>distribution</id> |
| <modules> |
| <module>distribution</module> |
| </modules> |
| </profile> |
| <!-- Switch all default plugins to use Java7 instead of Java8 --> |
| <profile> |
| <id>toolchain</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-toolchains-plugin</artifactId> |
| <version>1.1</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>toolchain</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <toolchains> |
| <jdk> |
| <version>1.7</version> |
| <vendor>oracle</vendor> |
| </jdk> |
| </toolchains> |
| </configuration> |
| </plugin> |
| <!-- |
| The retrolambda plugin requires Java 8 to operate, but we set the toolchain |
| to Java 7. Therefore we need to provide a path to the Java 8 home directory. |
| This check ensures this property is set and provides an understandable error |
| message. |
| --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>1.4.1</version> |
| <executions> |
| <execution> |
| <id>enforce-property</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <requireProperty> |
| <property>java8.home</property> |
| <message>The retrolambda-maven-plugin requires a path to Java 8. You must set a 'java8.home' property!</message> |
| </requireProperty> |
| </rules> |
| <fail>true</fail> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>net.orfjackal.retrolambda</groupId> |
| <artifactId>retrolambda-maven-plugin</artifactId> |
| <version>2.5.1</version> |
| <executions> |
| <execution> |
| <configuration> |
| <java8home>${java8.home}</java8home> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| </project> |