blob: b9ac7165a6895d18aa49c0239b70d83a7bde7325 [file] [log] [blame]
Till Westmann276bbc22013-06-05 18:56:27 -07001<!--
Ian Maxond8857792015-09-11 14:19:53 -07002 ! Licensed to the Apache Software Foundation (ASF) under one
3 ! or more contributor license agreements. See the NOTICE file
4 ! distributed with this work for additional information
5 ! regarding copyright ownership. The ASF licenses this file
6 ! to you under the Apache License, Version 2.0 (the
7 ! "License"); you may not use this file except in compliance
8 ! with the License. You may obtain a copy of the License at
9 !
10 ! http://www.apache.org/licenses/LICENSE-2.0
11 !
12 ! Unless required by applicable law or agreed to in writing,
13 ! software distributed under the License is distributed on an
14 ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 ! KIND, either express or implied. See the License for the
16 ! specific language governing permissions and limitations
17 ! under the License.
Till Westmann276bbc22013-06-05 18:56:27 -070018 !-->
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -080019<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
20 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
vinayakbe5add8a2012-10-06 19:00:14 +000021 <modelVersion>4.0.0</modelVersion>
Ian Maxone915e8c2015-07-01 17:03:31 -070022 <groupId>org.apache.hyracks</groupId>
Michael Blowc3dfd4b2017-01-17 17:19:49 -050023 <artifactId>apache-hyracks</artifactId>
Michael Blow23d990c2019-03-27 22:11:26 -040024 <version>0.3.4.2-SNAPSHOT</version>
vinayakbe5add8a2012-10-06 19:00:14 +000025 <packaging>pom</packaging>
buyingyi7f356c12012-10-07 00:23:17 +000026 <name>hyracks-ecosystem-full-stack</name>
Michael Blow38ca9622018-02-28 11:44:43 -050027 <url>${implementation.url}</url>
Michael Blowb4c1fb02016-05-09 15:41:00 -070028 <parent>
29 <groupId>org.apache</groupId>
30 <artifactId>apache</artifactId>
Michael Blowb99349d2016-11-08 19:38:02 -050031 <version>18</version>
Michael Blow380b0a22016-08-02 13:05:52 -040032 <relativePath />
Michael Blowb4c1fb02016-05-09 15:41:00 -070033 </parent>
Michael Blowb4c1fb02016-05-09 15:41:00 -070034 <licenses>
35 <license>
36 <name>Apache License, Version 2.0</name>
37 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
38 <distribution>repo</distribution>
39 <comments>A business-friendly OSS license</comments>
40 </license>
41 </licenses>
Ian Maxon4b228432017-01-16 13:35:16 -080042 <scm>
43 <connection>scm:git:https://github.com/apache/asterixdb</connection>
44 <developerConnection>scm:git:ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb</developerConnection>
45 <url>https://github.com/apache/asterixdb</url>
Ian Maxona3435a32017-01-18 18:31:30 -080046 <tag>HEAD</tag>
Ian Maxon4b228432017-01-16 13:35:16 -080047 </scm>
Michael Blowb4c1fb02016-05-09 15:41:00 -070048 <properties>
Ian Maxon3bb92132019-02-12 22:20:25 -080049 <root.dir>${basedir}</root.dir>
Michael Blowb4c1fb02016-05-09 15:41:00 -070050 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
Michael Blowdd920be2017-06-07 15:04:33 -040051 <file.encoding>UTF-8</file.encoding>
Michael Blowcedd9612018-07-25 13:25:02 -040052 <source.jdk.version>1.8</source.jdk.version>
Michael Blow2b057012017-12-07 22:20:39 -050053 <javac.xlint.value>all</javac.xlint.value>
Michael Blow380b0a22016-08-02 13:05:52 -040054 <jvm.extraargs />
Michael Blowb4c1fb02016-05-09 15:41:00 -070055 <sonar.jacoco.reportPath>${env.PWD}/target/jacoco-merged.exec</sonar.jacoco.reportPath>
Michael Blow4cd925c2018-01-20 17:15:38 -050056 <source-format.goal>format</source-format.goal>
Dmitry Lychagin249be532017-05-31 14:57:14 -070057 <source-format.skip>false</source-format.skip>
Ian Maxon3bb92132019-02-12 22:20:25 -080058 <maven.test.skip>false</maven.test.skip>
Michael Blowe30c9d32018-01-20 09:42:19 -050059 <skipTests>false</skipTests>
Michael Blowdd920be2017-06-07 15:04:33 -040060 <skip.surefire.tests>${skipTests}</skip.surefire.tests>
Michael Blow7626d162017-12-10 14:26:56 -050061 <skip.testResources>${maven.test.skip}</skip.testResources>
Michael Blow2530e392018-02-06 01:19:42 -050062 <testLog4jConfigFile>${root.dir}/src/test/resources/log4j2-hyracks-test.xml</testLog4jConfigFile>
Michael Blowb4c1fb02016-05-09 15:41:00 -070063 <!-- Definition of tests in various categories which may be excluded -->
Michael Blowb4c1fb02016-05-09 15:41:00 -070064 <hivesterix.perf.tests>**/hivesterix/perf/PerfTestSuite.java</hivesterix.perf.tests>
65 <global.test.includes>**/*TestSuite.java,**/*Test.java</global.test.includes>
Michael Blow64d49fb2018-02-11 15:43:47 -050066 <global.test.excludes>**/Abstract*.java,${hivesterix.perf.tests}</global.test.excludes>
Michael Blowe30c9d32018-01-20 09:42:19 -050067 <test.includes>${global.test.includes}</test.includes>
68 <test.excludes>${global.test.excludes}</test.excludes>
Michael Blowb4c1fb02016-05-09 15:41:00 -070069 <!-- Versions under dependencymanagement or used in many projects via properties -->
Michael Blow7311b032018-10-04 17:17:35 -040070 <hadoop.version>2.8.5</hadoop.version>
Michael Blowb4c1fb02016-05-09 15:41:00 -070071 <jacoco.version>0.7.6.201602180812</jacoco.version>
Michael Blow38ca9622018-02-28 11:44:43 -050072
Michael Blowcbfe8f92018-02-28 14:02:38 -050073 <implementation.title>Apache Hyracks and Algebricks - ${project.name}</implementation.title>
Michael Blow38ca9622018-02-28 11:44:43 -050074 <implementation.url>https://asterixdb.apache.org/</implementation.url>
75 <implementation.version>${project.version}</implementation.version>
76 <implementation.vendor>${project.organization.name}</implementation.vendor>
Michael Blowb4c1fb02016-05-09 15:41:00 -070077 </properties>
78 <dependencyManagement>
79 <dependencies>
80 <dependency>
Till Westmannea666c92017-02-22 22:25:15 -080081 <groupId>io.netty</groupId>
82 <artifactId>netty-all</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -050083 <version>4.1.32.Final</version>
Till Westmannea666c92017-02-22 22:25:15 -080084 </dependency>
85 <dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -070086 <groupId>junit</groupId>
87 <artifactId>junit</artifactId>
Michael Blow599ef8f2017-01-12 11:02:53 -050088 <version>4.12</version>
Michael Blowb4c1fb02016-05-09 15:41:00 -070089 </dependency>
90 <dependency>
91 <groupId>org.apache.hadoop</groupId>
92 <artifactId>hadoop-yarn-client</artifactId>
93 <version>${hadoop.version}</version>
94 </dependency>
95 <dependency>
96 <groupId>org.apache.hadoop</groupId>
97 <artifactId>hadoop-client</artifactId>
98 <version>${hadoop.version}</version>
99 </dependency>
100 <dependency>
101 <groupId>org.apache.hadoop</groupId>
102 <artifactId>hadoop-common</artifactId>
103 <version>${hadoop.version}</version>
Michael Blowaebe2c52018-06-10 14:18:53 -0400104 <exclusions>
105 <exclusion>
106 <groupId>javax.servlet.jsp</groupId>
107 <artifactId>jsp-api</artifactId>
108 </exclusion>
109 <exclusion>
110 <groupId>javax.servlet</groupId>
111 <artifactId>servlet-api</artifactId>
112 </exclusion>
113 <exclusion>
114 <groupId>jdk.tools</groupId>
115 <artifactId>jdk.tools</artifactId>
116 </exclusion>
117 </exclusions>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700118 </dependency>
119 <dependency>
120 <groupId>org.apache.hadoop</groupId>
121 <artifactId>hadoop-hdfs</artifactId>
122 <version>${hadoop.version}</version>
123 </dependency>
124 <dependency>
125 <groupId>org.apache.hadoop</groupId>
126 <artifactId>hadoop-minicluster</artifactId>
127 <version>${hadoop.version}</version>
128 </dependency>
129 <dependency>
130 <groupId>org.apache.hadoop</groupId>
131 <artifactId>hadoop-mapreduce-client-core</artifactId>
132 <version>${hadoop.version}</version>
133 </dependency>
134 <dependency>
Michael Blowba358122016-10-13 19:56:03 -0400135 <groupId>org.apache.hadoop</groupId>
136 <artifactId>hadoop-hdfs</artifactId>
137 <version>${hadoop.version}</version>
138 <classifier>tests</classifier>
139 <scope>test</scope>
140 </dependency>
141 <dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700142 <groupId>commons-io</groupId>
143 <artifactId>commons-io</artifactId>
Michael Blow204b2952017-12-07 20:17:47 -0500144 <version>2.6</version>
145 </dependency>
146 <dependency>
Michael Blow6f75f052018-04-15 20:06:48 -0400147 <groupId>org.apache.commons</groupId>
148 <artifactId>commons-text</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500149 <version>1.6</version>
Michael Blow6f75f052018-04-15 20:06:48 -0400150 </dependency>
151 <dependency>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800152 <groupId>com.fasterxml.jackson.core</groupId>
153 <artifactId>jackson-databind</artifactId>
Michael Blowe8e59d0e2019-09-26 19:28:12 -0400154 <version>2.9.10</version>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800155 </dependency>
156 <dependency>
157 <groupId>com.fasterxml.jackson.core</groupId>
158 <artifactId>jackson-core</artifactId>
Michael Blowe8e59d0e2019-09-26 19:28:12 -0400159 <version>2.9.10</version>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800160 </dependency>
Michael Blow599ef8f2017-01-12 11:02:53 -0500161 <dependency>
Michael Blow204b2952017-12-07 20:17:47 -0500162 <groupId>com.fasterxml.jackson.core</groupId>
163 <artifactId>jackson-annotations</artifactId>
Michael Blowe8e59d0e2019-09-26 19:28:12 -0400164 <version>2.9.10</version>
Michael Blow204b2952017-12-07 20:17:47 -0500165 </dependency>
166 <dependency>
Michael Blow599ef8f2017-01-12 11:02:53 -0500167 <groupId>com.google.guava</groupId>
168 <artifactId>guava</artifactId>
Michael Blowe8e59d0e2019-09-26 19:28:12 -0400169 <version>28.0-jre</version>
170 <exclusions>
171 <exclusion>
172 <groupId>com.google.code.findbugs</groupId>
173 <artifactId>jsr305</artifactId>
174 </exclusion>
175 <exclusion>
176 <groupId>com.google.guava</groupId>
177 <artifactId>listenablefuture</artifactId>
178 </exclusion>
179 <exclusion>
180 <groupId>org.checkerframework</groupId>
181 <artifactId>checker-qual</artifactId>
182 </exclusion>
183 <exclusion>
184 <groupId>com.google.j2objc</groupId>
185 <artifactId>j2objc-annotations</artifactId>
186 </exclusion>
187 <exclusion>
188 <groupId>org.codehaus.mojo</groupId>
189 <artifactId>animal-sniffer-annotations</artifactId>
190 </exclusion>
191 </exclusions>
Michael Blow599ef8f2017-01-12 11:02:53 -0500192 </dependency>
Michael Blow43b40b62017-01-14 17:03:12 -0500193 <dependency>
194 <groupId>org.apache.commons</groupId>
195 <artifactId>commons-lang3</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500196 <version>3.8.1</version>
Michael Blow43b40b62017-01-14 17:03:12 -0500197 </dependency>
Michael Blow5e17af22017-02-02 10:00:44 -0500198 <dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500199 <groupId>org.apache.commons</groupId>
200 <artifactId>commons-collections4</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500201 <version>4.2</version>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500202 </dependency>
203 <dependency>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800204 <groupId>org.apache.httpcomponents</groupId>
205 <artifactId>httpcore</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500206 <version>4.4.10</version>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800207 </dependency>
208 <dependency>
209 <groupId>org.apache.httpcomponents</groupId>
210 <artifactId>httpclient</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500211 <version>4.5.6</version>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800212 </dependency>
213 <dependency>
Michael Blow5e17af22017-02-02 10:00:44 -0500214 <groupId>org.apache.rat</groupId>
215 <artifactId>apache-rat-plugin</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500216 <version>0.13</version>
Michael Blow5e17af22017-02-02 10:00:44 -0500217 </dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500218 <dependency>
Dmitry Lychagin249be532017-05-31 14:57:14 -0700219 <groupId>net.revelc.code.formatter</groupId>
220 <artifactId>formatter-maven-plugin</artifactId>
221 <version>2.0.1</version>
222 </dependency>
223 <dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500224 <groupId>args4j</groupId>
225 <artifactId>args4j</artifactId>
226 <version>2.33</version>
227 </dependency>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300228 <dependency>
229 <groupId>org.apache.logging.log4j</groupId>
230 <artifactId>log4j-api</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500231 <version>2.11.1</version>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300232 </dependency>
233 <dependency>
234 <groupId>org.apache.logging.log4j</groupId>
235 <artifactId>log4j-core</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500236 <version>2.11.1</version>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300237 </dependency>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800238 <dependency>
239 <groupId>org.mockito</groupId>
240 <artifactId>mockito-all</artifactId>
241 <version>2.0.2-beta</version>
242 </dependency>
Michael Blow7311b032018-10-04 17:17:35 -0400243 <dependency>
244 <groupId>javax.xml.bind</groupId>
245 <artifactId>jaxb-api</artifactId>
246 <version>2.3.0</version>
247 </dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700248 </dependencies>
249 </dependencyManagement>
vinayakbe5add8a2012-10-06 19:00:14 +0000250 <build>
251 <plugins>
252 <plugin>
Michael Blowba358122016-10-13 19:56:03 -0400253 <groupId>org.apache.maven.plugins</groupId>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500254 <artifactId>maven-jar-plugin</artifactId>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500255 <configuration>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500256 <excludes combine.children="append">
Michael Blowc96bb1f2017-01-16 16:31:54 -0500257 <exclude>**/DEPENDENCIES</exclude>
258 </excludes>
Michael Blow38ca9622018-02-28 11:44:43 -0500259 <archive>
260 <manifest>
261 <addDefaultImplementationEntries>false</addDefaultImplementationEntries>
262 <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
263 </manifest>
264 <manifestEntries>
265 <Implementation-Title>${implementation.title}</Implementation-Title>
266 <Implementation-URL>${implementation.url}</Implementation-URL>
267 <Implementation-Version>${implementation.version}</Implementation-Version>
268 <Implementation-Vendor>${implementation.vendor}</Implementation-Vendor>
269 </manifestEntries>
270 </archive>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500271 </configuration>
272 </plugin>
273 <plugin>
274 <groupId>org.apache.maven.plugins</groupId>
Michael Blowba358122016-10-13 19:56:03 -0400275 <artifactId>maven-dependency-plugin</artifactId>
Michael Blowba358122016-10-13 19:56:03 -0400276 <configuration>
277 <failOnWarning>true</failOnWarning>
278 <outputXML>true</outputXML>
279 </configuration>
280 <executions>
281 <execution>
282 <phase>process-test-classes</phase>
283 <goals>
284 <goal>analyze-only</goal>
285 </goals>
286 </execution>
287 </executions>
288 </plugin>
289 <plugin>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700290 <groupId>org.apache.rat</groupId>
291 <artifactId>apache-rat-plugin</artifactId>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700292 <executions>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700293 <execution>
294 <phase>validate</phase>
295 <goals>
296 <goal>check</goal>
297 </goals>
298 </execution>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700299 </executions>
300 <configuration>
Michael Blow5e17af22017-02-02 10:00:44 -0500301 <addDefaultLicenseMatchers>false</addDefaultLicenseMatchers>
302 <consoleOutput>true</consoleOutput>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700303 <licenses>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800304 <license implementation="org.apache.rat.analysis.license.ApacheSoftwareLicense20" />
Ian Maxon137fc3b2015-06-30 16:23:48 -0700305 </licenses>
306 <licenseFamilies>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800307 <licenseFamily implementation="org.apache.rat.license.Apache20LicenseFamily" />
Ian Maxon137fc3b2015-06-30 16:23:48 -0700308 </licenseFamilies>
Michael Blow5e17af22017-02-02 10:00:44 -0500309 <excludeSubProjects>true</excludeSubProjects>
Michael Blowe7aec9c2017-04-28 17:08:45 -0400310 <excludes combine.children="append">
311 <exclude>**/*.iml</exclude>
312 </excludes>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700313 </configuration>
314 </plugin>
315 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700316 <groupId>org.apache.maven.plugins</groupId>
317 <artifactId>maven-surefire-plugin</artifactId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700318 <configuration>
319 <failIfNoTests>false</failIfNoTests>
320 <forkCount>1</forkCount>
Chris Hilleryd2c1a8a2014-02-21 01:03:02 -0800321 <reuseForks>false</reuseForks>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800322 <argLine>-enableassertions -Xmx2048m -Dfile.encoding=UTF-8 -Xdebug
Murtadha Hubailc7eb0c52018-05-21 18:01:55 +0300323 -Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n ${coverageArgLine}
Michael Blowb4c1fb02016-05-09 15:41:00 -0700324 </argLine>
Murtadha Hubail06ca2792018-01-16 00:12:27 +0300325 <systemPropertyVariables>
326 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
327 </systemPropertyVariables>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700328 <includes>
Michael Blowe30c9d32018-01-20 09:42:19 -0500329 <include>${test.includes}</include>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700330 </includes>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500331 <excludes combine.children="append">
Michael Blowe30c9d32018-01-20 09:42:19 -0500332 <exclude>${test.excludes}</exclude>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800333 </excludes>
Michael Blowdd920be2017-06-07 15:04:33 -0400334 <skipTests>${skip.surefire.tests}</skipTests>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700335 </configuration>
Ian Maxon5ae0df82015-10-14 10:45:19 -0700336 </plugin>
337 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700338 <groupId>org.apache.maven.plugins</groupId>
Murtadha Hubail06ca2792018-01-16 00:12:27 +0300339 <artifactId>maven-failsafe-plugin</artifactId>
340 <configuration>
341 <systemPropertyVariables>
342 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
343 </systemPropertyVariables>
344 </configuration>
345 </plugin>
346 <plugin>
347 <groupId>org.apache.maven.plugins</groupId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700348 <artifactId>maven-compiler-plugin</artifactId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700349 <configuration>
Michael Blowcedd9612018-07-25 13:25:02 -0400350 <source>${source.jdk.version}</source>
351 <target>${target.jdk.version}</target>
Michael Blow2b057012017-12-07 22:20:39 -0500352 <compilerArgument>-Xlint:${javac.xlint.value}</compilerArgument>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700353 </configuration>
vinayakbe5add8a2012-10-06 19:00:14 +0000354 </plugin>
Ian Maxonb165aca2016-03-17 18:21:57 -0700355 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700356 <groupId>org.apache.maven.plugins</groupId>
357 <artifactId>maven-remote-resources-plugin</artifactId>
358 <executions>
359 <execution>
360 <goals>
361 <goal>process</goal>
362 </goals>
363 <configuration>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500364 <resourceBundles>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700365 <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700366 </resourceBundles>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500367 <properties>
368 <projectName>Apache Hyracks - ${project.name}</projectName>
369 </properties>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700370 </configuration>
371 </execution>
372 </executions>
Ian Maxon9e37c962015-11-25 07:38:37 -0800373 </plugin>
Michael Blowd1e2a992016-06-14 12:27:46 -0400374 <plugin>
375 <groupId>org.apache.maven.plugins</groupId>
376 <artifactId>maven-checkstyle-plugin</artifactId>
377 <version>2.17</version>
378 <executions>
379 <execution>
380 <id>verify-style</id>
381 <phase>process-classes</phase>
382 <goals>
383 <goal>check</goal>
384 </goals>
385 </execution>
386 </executions>
387 <configuration>
388 <logViolationsToConsole>true</logViolationsToConsole>
389 <checkstyleRules>
390 <module name="Checker">
391 <!-- Checks for whitespace -->
392 <!-- See http://checkstyle.sf.net/config_whitespace.html -->
Michael Blow380b0a22016-08-02 13:05:52 -0400393 <module name="FileTabCharacter" />
Michael Blowd1e2a992016-06-14 12:27:46 -0400394 </module>
395 </checkstyleRules>
Michael Blowd6cf6412016-06-30 02:44:35 -0400396 <includes>**/*.java,**/*.jj</includes>
397 <resourceIncludes>**/*.properties,**/*.xml,**/*.xsd,**/*.sh</resourceIncludes>
Michael Blowd1e2a992016-06-14 12:27:46 -0400398 <sourceDirectories>${project.build.sourceDirectory},${project.build.testSourceDirectory}</sourceDirectories>
399 </configuration>
400 </plugin>
Michael Blowf53c1c62016-06-17 16:51:59 -0400401 <plugin>
402 <groupId>org.apache.maven.plugins</groupId>
403 <artifactId>maven-enforcer-plugin</artifactId>
Michael Blow918c5b12017-10-30 14:51:13 -0400404 <version>3.0.0-M1</version>
Michael Blowf53c1c62016-06-17 16:51:59 -0400405 <executions>
406 <execution>
407 <id>enforce-versions</id>
408 <goals>
409 <goal>enforce</goal>
410 </goals>
411 <configuration>
412 <rules>
413 <requireMavenVersion>
414 <version>[3.3.9,)</version>
415 </requireMavenVersion>
416 </rules>
417 </configuration>
418 </execution>
419 </executions>
420 </plugin>
Michael Blow7626d162017-12-10 14:26:56 -0500421 <plugin>
422 <groupId>org.apache.maven.plugins</groupId>
423 <artifactId>maven-resources-plugin</artifactId>
424 <executions>
425 <execution>
426 <id>default-testResources</id>
427 <goals>
428 <goal>testResources</goal>
429 </goals>
430 <configuration>
431 <skip>${skip.testResources}</skip>
432 </configuration>
433 </execution>
434 </executions>
435 </plugin>
Michael Blowcb9ca972018-01-27 23:03:30 -0500436 <plugin>
437 <groupId>net.revelc.code.formatter</groupId>
438 <artifactId>formatter-maven-plugin</artifactId>
439 <executions>
440 <execution>
441 <goals>
442 <goal>${source-format.goal}</goal>
443 </goals>
444 </execution>
445 </executions>
446 <configuration>
447 <configFile>${root.dir}/AsterixCodeFormatProfile.xml</configFile>
448 <skipFormatting>${source-format.skip}</skipFormatting>
449 </configuration>
450 </plugin>
vinayakbe5add8a2012-10-06 19:00:14 +0000451 </plugins>
Yingyi Bud680e142016-03-18 16:41:46 -0700452 <pluginManagement>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700453 <plugins>
Michael Blow5e17af22017-02-02 10:00:44 -0500454 <plugin>
Till Westmann65da60c2017-02-22 13:17:49 -0800455 <groupId>org.apache.maven.plugins</groupId>
456 <artifactId>maven-compiler-plugin</artifactId>
Michael Blow7311b032018-10-04 17:17:35 -0400457 <version>3.8.0</version>
Till Westmann65da60c2017-02-22 13:17:49 -0800458 </plugin>
459 <plugin>
Michael Blow5e17af22017-02-02 10:00:44 -0500460 <groupId>org.apache.rat</groupId>
461 <artifactId>apache-rat-plugin</artifactId>
462 <version>0.12</version>
463 </plugin>
Dmitry Lychagin249be532017-05-31 14:57:14 -0700464 <plugin>
465 <groupId>net.revelc.code.formatter</groupId>
466 <artifactId>formatter-maven-plugin</artifactId>
467 <version>2.0.1</version>
468 </plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700469 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
470 <plugin>
471 <groupId>org.eclipse.m2e</groupId>
472 <artifactId>lifecycle-mapping</artifactId>
473 <version>1.0.0</version>
474 <configuration>
475 <lifecycleMappingMetadata>
476 <pluginExecutions>
477 <pluginExecution>
478 <pluginExecutionFilter>
479 <groupId>org.apache.rat</groupId>
480 <artifactId>apache-rat-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400481 <versionRange>[0.0,)</versionRange>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700482 <goals>
483 <goal>check</goal>
484 </goals>
485 </pluginExecutionFilter>
486 <action>
Michael Blow380b0a22016-08-02 13:05:52 -0400487 <ignore />
Michael Blowb4c1fb02016-05-09 15:41:00 -0700488 </action>
489 </pluginExecution>
Michael Blow8f2cf242016-06-30 01:45:39 -0400490 <pluginExecution>
491 <pluginExecutionFilter>
492 <groupId>org.apache.maven.plugins</groupId>
493 <artifactId>maven-checkstyle-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400494 <versionRange>[0.0,)</versionRange>
Michael Blow8f2cf242016-06-30 01:45:39 -0400495 <goals>
496 <goal>check</goal>
497 </goals>
498 </pluginExecutionFilter>
499 <action>
Michael Blow380b0a22016-08-02 13:05:52 -0400500 <ignore />
Michael Blow8f2cf242016-06-30 01:45:39 -0400501 </action>
502 </pluginExecution>
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700503 <pluginExecution>
504 <pluginExecutionFilter>
505 <groupId>org.apache.maven.plugins</groupId>
506 <artifactId>maven-dependency-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400507 <versionRange>[0.0,)</versionRange>
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700508 <goals>
509 <goal>analyze-only</goal>
510 </goals>
511 </pluginExecutionFilter>
512 <action>
Ian Maxondef643d2017-01-18 18:31:11 -0800513 <ignore />
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700514 </action>
515 </pluginExecution>
Taewoo Kima252d782018-01-30 13:29:07 -0800516 <pluginExecution>
517 <pluginExecutionFilter>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800518 <groupId>net.revelc.code.formatter</groupId>
519 <artifactId>formatter-maven-plugin</artifactId>
520 <versionRange>[2.0.1,)</versionRange>
521 <goals>
522 <goal>format</goal>
523 </goals>
524 </pluginExecutionFilter>
525 <action>
526 <ignore></ignore>
527 </action>
Taewoo Kima252d782018-01-30 13:29:07 -0800528 </pluginExecution>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700529 </pluginExecutions>
530 </lifecycleMappingMetadata>
531 </configuration>
532 </plugin>
Ian Maxon99fed932017-02-09 19:11:39 -0800533 <plugin>
Michael Blowa7fad192017-03-09 22:10:19 -0500534 <groupId>org.codehaus.mojo</groupId>
535 <artifactId>versions-maven-plugin</artifactId>
Michael Blow0aae1832017-10-29 11:59:47 -0400536 <version>2.5</version>
Ian Maxon99fed932017-02-09 19:11:39 -0800537 </plugin>
538 <plugin>
Michael Blowa7fad192017-03-09 22:10:19 -0500539 <groupId>org.apache.maven.plugins</groupId>
540 <artifactId>maven-scm-plugin</artifactId>
541 <version>1.9.5</version>
542 </plugin>
543 <plugin>
544 <groupId>org.codehaus.mojo</groupId>
545 <artifactId>appassembler-maven-plugin</artifactId>
546 <version>2.0.0</version>
Ian Maxon99fed932017-02-09 19:11:39 -0800547 </plugin>
Michael Blow10a74862017-05-23 16:55:39 -0400548 <plugin>
549 <groupId>org.apache.maven.plugins</groupId>
550 <artifactId>maven-surefire-plugin</artifactId>
Michael Blowaebe2c52018-06-10 14:18:53 -0400551 <version>2.21.0</version>
Michael Blow10a74862017-05-23 16:55:39 -0400552 </plugin>
553 <plugin>
554 <groupId>org.apache.maven.plugins</groupId>
555 <artifactId>maven-failsafe-plugin</artifactId>
Michael Blowaebe2c52018-06-10 14:18:53 -0400556 <version>2.21.0</version>
Michael Blow10a74862017-05-23 16:55:39 -0400557 </plugin>
Michael Blow09f958c2017-08-20 17:02:19 -0400558 <plugin>
559 <groupId>org.apache.hyracks</groupId>
560 <artifactId>license-automation-plugin</artifactId>
561 <version>${project.version}</version>
562 </plugin>
Michael Blow0aae1832017-10-29 11:59:47 -0400563 <plugin>
564 <groupId>org.apache.maven.plugins</groupId>
565 <artifactId>maven-assembly-plugin</artifactId>
566 <version>3.1.0</version>
567 </plugin>
568 <plugin>
569 <groupId>org.apache.maven.plugins</groupId>
570 <artifactId>maven-antrun-plugin</artifactId>
571 <version>1.8</version>
572 </plugin>
573 <plugin>
574 <groupId>org.apache.maven.plugins</groupId>
575 <artifactId>maven-clean-plugin</artifactId>
576 <version>3.0.0</version>
577 </plugin>
578 <plugin>
579 <groupId>org.apache.maven.plugins</groupId>
580 <artifactId>maven-jar-plugin</artifactId>
581 <version>3.0.2</version>
582 </plugin>
583 <plugin>
584 <groupId>org.codehaus.mojo</groupId>
585 <artifactId>build-helper-maven-plugin</artifactId>
586 <version>3.0.0</version>
587 </plugin>
588 <plugin>
589 <groupId>org.apache.maven.plugins</groupId>
590 <artifactId>maven-dependency-plugin</artifactId>
Michael Blowcedd9612018-07-25 13:25:02 -0400591 <version>3.1.1</version>
Michael Blow0aae1832017-10-29 11:59:47 -0400592 </plugin>
Michael Blow918c5b12017-10-30 14:51:13 -0400593 <plugin>
594 <groupId>org.apache.maven.doxia</groupId>
595 <artifactId>doxia-maven-plugin</artifactId>
596 <version>1.1.4</version>
597 </plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700598 </plugins>
599 </pluginManagement>
vinayakbe5add8a2012-10-06 19:00:14 +0000600 </build>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800601 <profiles>
602 <profile>
Michael Blow916dce42017-05-23 13:19:12 -0400603 <id>skip-assembly</id>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700604 <activation>
605 <file>
Michael Blow916dce42017-05-23 13:19:12 -0400606 <missing>src/main/assembly/source.xml</missing>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700607 </file>
608 </activation>
Michael Blow916dce42017-05-23 13:19:12 -0400609 <properties>
610 <skip.assembly>true</skip.assembly>
611 </properties>
612 </profile>
613 <profile>
614 <id>release</id>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700615 <build>
616 <plugins>
617 <plugin>
618 <groupId>org.apache.maven.plugins</groupId>
Michael Blow38ca9622018-02-28 11:44:43 -0500619 <artifactId>maven-jar-plugin</artifactId>
620 <configuration>
621 <archive>
622 <manifest>
623 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
624 <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
625 </manifest>
626 </archive>
627 </configuration>
628 </plugin>
629 <plugin>
630 <groupId>org.apache.maven.plugins</groupId>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700631 <artifactId>maven-assembly-plugin</artifactId>
632 <!-- We override the configuration plugin to override the descriptor to use for building
633 the source release zip. Specifically, we would like to control the inclusions/exclusions.
634 For example, we exclude the KEYS file from the zip -->
635 <executions>
636 <execution>
637 <!-- Use this id to match the id mentioned in the assembly plugin configuration in
638 the apache parent POM under the apache-release profile -->
639 <id>source-release-assembly</id>
640 <phase>package</phase>
641 <goals>
642 <goal>single</goal>
643 </goals>
644 <!-- combine.self should be override to replace the configuration in the parent POM -->
645 <configuration combine.self="override">
646 <descriptors>
647 <descriptor>src/main/assembly/source.xml</descriptor>
648 </descriptors>
Michael Blow916dce42017-05-23 13:19:12 -0400649 <skipAssembly>${skip.assembly}</skipAssembly>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700650 </configuration>
651 </execution>
652 </executions>
653 </plugin>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700654 <plugin>
655 <groupId>org.apache.maven.plugins</groupId>
Ian Maxon99fed932017-02-09 19:11:39 -0800656 <artifactId>maven-gpg-plugin</artifactId>
657 <version>1.6</version>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700658 <executions>
659 <execution>
Ian Maxon99fed932017-02-09 19:11:39 -0800660 <id>sign-artifacts</id>
661 <phase>verify</phase>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700662 <goals>
Ian Maxon99fed932017-02-09 19:11:39 -0800663 <goal>sign</goal>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700664 </goals>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700665 </execution>
666 </executions>
667 </plugin>
668 </plugins>
669 </build>
670 </profile>
Ian Maxon5ae0df82015-10-14 10:45:19 -0700671 <profile>
Michael Blow7c15c132016-05-04 22:06:34 -0400672 <id>coverage</id>
673 <activation>
674 <property>
675 <name>coverage</name>
676 </property>
677 </activation>
678 <build>
679 <plugins>
680 <plugin>
681 <groupId>org.jacoco</groupId>
682 <artifactId>jacoco-maven-plugin</artifactId>
683 <version>${jacoco.version}</version>
684 <executions>
685 <execution>
686 <id>default-prepare-agent</id>
687 <goals>
688 <goal>prepare-agent</goal>
689 </goals>
690 <configuration>
691 <propertyName>coverageArgLine</propertyName>
692 </configuration>
693 </execution>
694 <execution>
695 <id>default-prepare-agent-integration</id>
696 <goals>
697 <goal>prepare-agent-integration</goal>
698 </goals>
699 <configuration>
700 <propertyName>coverageArgLine</propertyName>
701 </configuration>
702 </execution>
703 </executions>
704 </plugin>
705 </plugins>
706 </build>
707 <properties>
Michael Blow380b0a22016-08-02 13:05:52 -0400708 <coverage />
Michael Blow7c15c132016-05-04 22:06:34 -0400709 </properties>
710 </profile>
711 <profile>
712 <id>no-coverage</id>
713 <activation>
714 <property>
715 <name>!coverage</name>
716 </property>
717 </activation>
718 <properties>
Michael Blow380b0a22016-08-02 13:05:52 -0400719 <coverageArgLine />
Michael Blow7c15c132016-05-04 22:06:34 -0400720 </properties>
721 </profile>
722 <profile>
Michael Blow64d49fb2018-02-11 15:43:47 -0500723 <id>integration-tests-only</id>
724 <properties>
725 <test.includes/>
726 <failIfNoTests>false</failIfNoTests>
727 </properties>
728 </profile>
Michael Blowcedd9612018-07-25 13:25:02 -0400729 <profile>
730 <id>java8</id>
731 <activation>
732 <jdk>1.8</jdk>
733 </activation>
734 <properties>
735 <target.jdk.version>8</target.jdk.version>
736 </properties>
737 </profile>
738 <profile>
739 <id>java9</id>
740 <activation>
741 <jdk>9</jdk>
742 </activation>
743 <properties>
744 <target.jdk.version>9</target.jdk.version>
745 </properties>
746 </profile>
747 <profile>
748 <id>java10</id>
749 <activation>
750 <jdk>10</jdk>
751 </activation>
752 <properties>
753 <target.jdk.version>10</target.jdk.version>
754 </properties>
755 </profile>
756 <profile>
757 <id>java11</id>
758 <activation>
759 <jdk>11</jdk>
760 </activation>
761 <properties>
Michael Blow7311b032018-10-04 17:17:35 -0400762 <!-- several plugins do not yet support Java 11 classes (maven-plugin-plugin, maven-dependency-plugin) -->
763 <target.jdk.version>10</target.jdk.version>
Michael Blowcedd9612018-07-25 13:25:02 -0400764 </properties>
765 </profile>
766 <profile>
767 <id>java8-bootclasspath</id>
768 <activation>
769 <property>
770 <name>java8-bootclasspath</name>
771 </property>
772 </activation>
773 <properties>
774 <target.jdk.version>8</target.jdk.version>
775 </properties>
776 <build>
777 <plugins>
778 <plugin>
779 <groupId>org.apache.maven.plugins</groupId>
780 <artifactId>maven-compiler-plugin</artifactId>
781 <configuration>
782 <compilerArgs combine.children="append">
783 <arg>-bootclasspath</arg>
784 <arg>${java8-bootclasspath}</arg>
785 </compilerArgs>
786 </configuration>
787 </plugin>
788 </plugins>
789 </build>
790 </profile>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800791 </profiles>
vinayakbe5add8a2012-10-06 19:00:14 +0000792 <modules>
793 <module>hyracks</module>
vinayakb36016dc2012-10-09 06:10:12 +0000794 <module>algebricks</module>
Michael Blow43b40b62017-01-14 17:03:12 -0500795 <module>hyracks-fullstack-license</module>
vinayakbe5add8a2012-10-06 19:00:14 +0000796 </modules>
Michael Blowbd7ba452018-10-31 15:08:26 -0400797</project>