blob: 565d29b3b2befe22507421532a8baf197ac72a14 [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>
AsterixDB Jenkins478eccb2018-08-31 14:57:31 -070024 <version>0.3.5-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>
Michael Blowef85fb02019-03-22 13:40:35 -040058 <import-sort.goal>sort</import-sort.goal>
59 <import-sort.skip>false</import-sort.skip>
Ian Maxon3bb92132019-02-12 22:20:25 -080060 <maven.test.skip>false</maven.test.skip>
Michael Blowe30c9d32018-01-20 09:42:19 -050061 <skipTests>false</skipTests>
Michael Blowdd920be2017-06-07 15:04:33 -040062 <skip.surefire.tests>${skipTests}</skip.surefire.tests>
Michael Blow7626d162017-12-10 14:26:56 -050063 <skip.testResources>${maven.test.skip}</skip.testResources>
Michael Blow2530e392018-02-06 01:19:42 -050064 <testLog4jConfigFile>${root.dir}/src/test/resources/log4j2-hyracks-test.xml</testLog4jConfigFile>
Michael Blowb4c1fb02016-05-09 15:41:00 -070065 <!-- Definition of tests in various categories which may be excluded -->
Michael Blowb4c1fb02016-05-09 15:41:00 -070066 <hivesterix.perf.tests>**/hivesterix/perf/PerfTestSuite.java</hivesterix.perf.tests>
67 <global.test.includes>**/*TestSuite.java,**/*Test.java</global.test.includes>
Michael Blow64d49fb2018-02-11 15:43:47 -050068 <global.test.excludes>**/Abstract*.java,${hivesterix.perf.tests}</global.test.excludes>
Michael Blowe30c9d32018-01-20 09:42:19 -050069 <test.includes>${global.test.includes}</test.includes>
70 <test.excludes>${global.test.excludes}</test.excludes>
Michael Blowb4c1fb02016-05-09 15:41:00 -070071 <!-- Versions under dependencymanagement or used in many projects via properties -->
Michael Blow3477a2b2018-10-04 17:17:35 -040072 <hadoop.version>2.8.5</hadoop.version>
Michael Blowb4c1fb02016-05-09 15:41:00 -070073 <jacoco.version>0.7.6.201602180812</jacoco.version>
Michael Blow38ca9622018-02-28 11:44:43 -050074
Michael Blowcbfe8f92018-02-28 14:02:38 -050075 <implementation.title>Apache Hyracks and Algebricks - ${project.name}</implementation.title>
Michael Blow38ca9622018-02-28 11:44:43 -050076 <implementation.url>https://asterixdb.apache.org/</implementation.url>
77 <implementation.version>${project.version}</implementation.version>
78 <implementation.vendor>${project.organization.name}</implementation.vendor>
Michael Blowb4c1fb02016-05-09 15:41:00 -070079 </properties>
80 <dependencyManagement>
81 <dependencies>
82 <dependency>
Till Westmannea666c92017-02-22 22:25:15 -080083 <groupId>io.netty</groupId>
84 <artifactId>netty-all</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -050085 <version>4.1.32.Final</version>
Till Westmannea666c92017-02-22 22:25:15 -080086 </dependency>
87 <dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -070088 <groupId>junit</groupId>
89 <artifactId>junit</artifactId>
Michael Blow599ef8f2017-01-12 11:02:53 -050090 <version>4.12</version>
Michael Blowb4c1fb02016-05-09 15:41:00 -070091 </dependency>
92 <dependency>
93 <groupId>org.apache.hadoop</groupId>
94 <artifactId>hadoop-yarn-client</artifactId>
95 <version>${hadoop.version}</version>
96 </dependency>
97 <dependency>
98 <groupId>org.apache.hadoop</groupId>
99 <artifactId>hadoop-client</artifactId>
100 <version>${hadoop.version}</version>
101 </dependency>
102 <dependency>
103 <groupId>org.apache.hadoop</groupId>
104 <artifactId>hadoop-common</artifactId>
105 <version>${hadoop.version}</version>
Michael Blowaebe2c52018-06-10 14:18:53 -0400106 <exclusions>
107 <exclusion>
108 <groupId>javax.servlet.jsp</groupId>
109 <artifactId>jsp-api</artifactId>
110 </exclusion>
111 <exclusion>
112 <groupId>javax.servlet</groupId>
113 <artifactId>servlet-api</artifactId>
114 </exclusion>
115 <exclusion>
116 <groupId>jdk.tools</groupId>
117 <artifactId>jdk.tools</artifactId>
118 </exclusion>
119 </exclusions>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700120 </dependency>
121 <dependency>
122 <groupId>org.apache.hadoop</groupId>
123 <artifactId>hadoop-hdfs</artifactId>
124 <version>${hadoop.version}</version>
125 </dependency>
126 <dependency>
127 <groupId>org.apache.hadoop</groupId>
128 <artifactId>hadoop-minicluster</artifactId>
129 <version>${hadoop.version}</version>
130 </dependency>
131 <dependency>
132 <groupId>org.apache.hadoop</groupId>
133 <artifactId>hadoop-mapreduce-client-core</artifactId>
134 <version>${hadoop.version}</version>
135 </dependency>
136 <dependency>
Michael Blowba358122016-10-13 19:56:03 -0400137 <groupId>org.apache.hadoop</groupId>
138 <artifactId>hadoop-hdfs</artifactId>
139 <version>${hadoop.version}</version>
140 <classifier>tests</classifier>
141 <scope>test</scope>
142 </dependency>
143 <dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700144 <groupId>commons-io</groupId>
145 <artifactId>commons-io</artifactId>
Michael Blow204b2952017-12-07 20:17:47 -0500146 <version>2.6</version>
147 </dependency>
148 <dependency>
Michael Blow6f75f052018-04-15 20:06:48 -0400149 <groupId>org.apache.commons</groupId>
150 <artifactId>commons-text</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500151 <version>1.6</version>
Michael Blow6f75f052018-04-15 20:06:48 -0400152 </dependency>
153 <dependency>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800154 <groupId>com.fasterxml.jackson.core</groupId>
155 <artifactId>jackson-databind</artifactId>
Michael Blowbd7ba452018-10-31 15:08:26 -0400156 <version>2.9.7</version>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800157 </dependency>
158 <dependency>
159 <groupId>com.fasterxml.jackson.core</groupId>
160 <artifactId>jackson-core</artifactId>
Michael Blowbd7ba452018-10-31 15:08:26 -0400161 <version>2.9.7</version>
Ian Maxond49bc6e2017-01-05 18:50:57 -0800162 </dependency>
Michael Blow599ef8f2017-01-12 11:02:53 -0500163 <dependency>
Michael Blow204b2952017-12-07 20:17:47 -0500164 <groupId>com.fasterxml.jackson.core</groupId>
165 <artifactId>jackson-annotations</artifactId>
Michael Blowbd7ba452018-10-31 15:08:26 -0400166 <version>2.9.7</version>
Michael Blow204b2952017-12-07 20:17:47 -0500167 </dependency>
168 <dependency>
Michael Blow599ef8f2017-01-12 11:02:53 -0500169 <groupId>com.google.guava</groupId>
170 <artifactId>guava</artifactId>
171 <version>18.0</version>
172 </dependency>
Michael Blow43b40b62017-01-14 17:03:12 -0500173 <dependency>
174 <groupId>org.apache.commons</groupId>
175 <artifactId>commons-lang3</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500176 <version>3.8.1</version>
Michael Blow43b40b62017-01-14 17:03:12 -0500177 </dependency>
Michael Blow5e17af22017-02-02 10:00:44 -0500178 <dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500179 <groupId>org.apache.commons</groupId>
180 <artifactId>commons-collections4</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500181 <version>4.2</version>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500182 </dependency>
183 <dependency>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800184 <groupId>org.apache.httpcomponents</groupId>
185 <artifactId>httpcore</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500186 <version>4.4.10</version>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800187 </dependency>
188 <dependency>
189 <groupId>org.apache.httpcomponents</groupId>
190 <artifactId>httpclient</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500191 <version>4.5.6</version>
Till Westmann55dd6ff2017-02-19 20:18:51 -0800192 </dependency>
193 <dependency>
Michael Blow5e17af22017-02-02 10:00:44 -0500194 <groupId>org.apache.rat</groupId>
195 <artifactId>apache-rat-plugin</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500196 <version>0.13</version>
Michael Blow5e17af22017-02-02 10:00:44 -0500197 </dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500198 <dependency>
Till Westmann192478b2019-03-01 10:45:25 -0800199 <groupId>org.ini4j</groupId>
200 <artifactId>ini4j</artifactId>
201 <version>0.5.4</version>
202 </dependency>
203 <dependency>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500204 <groupId>args4j</groupId>
205 <artifactId>args4j</artifactId>
206 <version>2.33</version>
207 </dependency>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300208 <dependency>
209 <groupId>org.apache.logging.log4j</groupId>
210 <artifactId>log4j-api</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500211 <version>2.11.1</version>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300212 </dependency>
213 <dependency>
214 <groupId>org.apache.logging.log4j</groupId>
215 <artifactId>log4j-core</artifactId>
Michael Blow0f7e4872018-12-15 20:01:23 -0500216 <version>2.11.1</version>
Murtadha Hubailaf4018d2017-12-15 17:56:38 +0300217 </dependency>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800218 <dependency>
219 <groupId>org.mockito</groupId>
220 <artifactId>mockito-all</artifactId>
221 <version>2.0.2-beta</version>
222 </dependency>
Michael Blow3477a2b2018-10-04 17:17:35 -0400223 <dependency>
224 <groupId>javax.xml.bind</groupId>
225 <artifactId>jaxb-api</artifactId>
226 <version>2.3.0</version>
227 </dependency>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700228 </dependencies>
229 </dependencyManagement>
vinayakbe5add8a2012-10-06 19:00:14 +0000230 <build>
231 <plugins>
232 <plugin>
Michael Blowba358122016-10-13 19:56:03 -0400233 <groupId>org.apache.maven.plugins</groupId>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500234 <artifactId>maven-jar-plugin</artifactId>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500235 <configuration>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500236 <excludes combine.children="append">
Michael Blowc96bb1f2017-01-16 16:31:54 -0500237 <exclude>**/DEPENDENCIES</exclude>
238 </excludes>
Michael Blow38ca9622018-02-28 11:44:43 -0500239 <archive>
Michael Blowaed96f02019-03-01 18:47:19 -0500240 <addMavenDescriptor>false</addMavenDescriptor>
Michael Blow38ca9622018-02-28 11:44:43 -0500241 <manifest>
242 <addDefaultImplementationEntries>false</addDefaultImplementationEntries>
243 <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
244 </manifest>
245 <manifestEntries>
246 <Implementation-Title>${implementation.title}</Implementation-Title>
247 <Implementation-URL>${implementation.url}</Implementation-URL>
248 <Implementation-Version>${implementation.version}</Implementation-Version>
249 <Implementation-Vendor>${implementation.vendor}</Implementation-Vendor>
250 </manifestEntries>
251 </archive>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500252 </configuration>
253 </plugin>
254 <plugin>
255 <groupId>org.apache.maven.plugins</groupId>
Michael Blowba358122016-10-13 19:56:03 -0400256 <artifactId>maven-dependency-plugin</artifactId>
Michael Blowba358122016-10-13 19:56:03 -0400257 <configuration>
258 <failOnWarning>true</failOnWarning>
259 <outputXML>true</outputXML>
260 </configuration>
261 <executions>
262 <execution>
263 <phase>process-test-classes</phase>
264 <goals>
265 <goal>analyze-only</goal>
266 </goals>
267 </execution>
268 </executions>
269 </plugin>
270 <plugin>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700271 <groupId>org.apache.rat</groupId>
272 <artifactId>apache-rat-plugin</artifactId>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700273 <executions>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700274 <execution>
275 <phase>validate</phase>
276 <goals>
277 <goal>check</goal>
278 </goals>
279 </execution>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700280 </executions>
281 <configuration>
Michael Blow5e17af22017-02-02 10:00:44 -0500282 <addDefaultLicenseMatchers>false</addDefaultLicenseMatchers>
283 <consoleOutput>true</consoleOutput>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700284 <licenses>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800285 <license implementation="org.apache.rat.analysis.license.ApacheSoftwareLicense20" />
Ian Maxon137fc3b2015-06-30 16:23:48 -0700286 </licenses>
287 <licenseFamilies>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800288 <licenseFamily implementation="org.apache.rat.license.Apache20LicenseFamily" />
Ian Maxon137fc3b2015-06-30 16:23:48 -0700289 </licenseFamilies>
Michael Blow5e17af22017-02-02 10:00:44 -0500290 <excludeSubProjects>true</excludeSubProjects>
Michael Blowe7aec9c2017-04-28 17:08:45 -0400291 <excludes combine.children="append">
292 <exclude>**/*.iml</exclude>
293 </excludes>
Ian Maxon137fc3b2015-06-30 16:23:48 -0700294 </configuration>
295 </plugin>
296 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700297 <groupId>org.apache.maven.plugins</groupId>
298 <artifactId>maven-surefire-plugin</artifactId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700299 <configuration>
300 <failIfNoTests>false</failIfNoTests>
301 <forkCount>1</forkCount>
Chris Hilleryd2c1a8a2014-02-21 01:03:02 -0800302 <reuseForks>false</reuseForks>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800303 <argLine>-enableassertions -Xmx2048m -Dfile.encoding=UTF-8 -Xdebug
Murtadha Hubailc7eb0c52018-05-21 18:01:55 +0300304 -Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n ${coverageArgLine}
Michael Blowb4c1fb02016-05-09 15:41:00 -0700305 </argLine>
Murtadha Hubail06ca2792018-01-16 00:12:27 +0300306 <systemPropertyVariables>
307 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
308 </systemPropertyVariables>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700309 <includes>
Michael Blowe30c9d32018-01-20 09:42:19 -0500310 <include>${test.includes}</include>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700311 </includes>
Michael Blow4c7b5bf2017-03-06 21:55:58 -0500312 <excludes combine.children="append">
Michael Blowe30c9d32018-01-20 09:42:19 -0500313 <exclude>${test.excludes}</exclude>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800314 </excludes>
Michael Blowdd920be2017-06-07 15:04:33 -0400315 <skipTests>${skip.surefire.tests}</skipTests>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700316 </configuration>
Ian Maxon5ae0df82015-10-14 10:45:19 -0700317 </plugin>
318 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700319 <groupId>org.apache.maven.plugins</groupId>
Murtadha Hubail06ca2792018-01-16 00:12:27 +0300320 <artifactId>maven-failsafe-plugin</artifactId>
321 <configuration>
322 <systemPropertyVariables>
323 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
324 </systemPropertyVariables>
325 </configuration>
326 </plugin>
327 <plugin>
328 <groupId>org.apache.maven.plugins</groupId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700329 <artifactId>maven-compiler-plugin</artifactId>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700330 <configuration>
Michael Blowcedd9612018-07-25 13:25:02 -0400331 <source>${source.jdk.version}</source>
332 <target>${target.jdk.version}</target>
Michael Blow2b057012017-12-07 22:20:39 -0500333 <compilerArgument>-Xlint:${javac.xlint.value}</compilerArgument>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700334 </configuration>
vinayakbe5add8a2012-10-06 19:00:14 +0000335 </plugin>
Ian Maxonb165aca2016-03-17 18:21:57 -0700336 <plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700337 <groupId>org.apache.maven.plugins</groupId>
338 <artifactId>maven-remote-resources-plugin</artifactId>
339 <executions>
340 <execution>
341 <goals>
342 <goal>process</goal>
343 </goals>
344 <configuration>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500345 <resourceBundles>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700346 <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700347 </resourceBundles>
Michael Blowc96bb1f2017-01-16 16:31:54 -0500348 <properties>
349 <projectName>Apache Hyracks - ${project.name}</projectName>
350 </properties>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700351 </configuration>
352 </execution>
353 </executions>
Ian Maxon9e37c962015-11-25 07:38:37 -0800354 </plugin>
Michael Blowd1e2a992016-06-14 12:27:46 -0400355 <plugin>
356 <groupId>org.apache.maven.plugins</groupId>
357 <artifactId>maven-checkstyle-plugin</artifactId>
Michael Blow6a2a4362019-03-27 14:31:16 -0400358 <version>3.0.0</version>
Michael Blowd1e2a992016-06-14 12:27:46 -0400359 <executions>
360 <execution>
361 <id>verify-style</id>
Michael Blow6a2a4362019-03-27 14:31:16 -0400362 <phase>process-sources</phase>
Michael Blowd1e2a992016-06-14 12:27:46 -0400363 <goals>
364 <goal>check</goal>
365 </goals>
366 </execution>
367 </executions>
368 <configuration>
369 <logViolationsToConsole>true</logViolationsToConsole>
370 <checkstyleRules>
371 <module name="Checker">
372 <!-- Checks for whitespace -->
373 <!-- See http://checkstyle.sf.net/config_whitespace.html -->
Michael Blow380b0a22016-08-02 13:05:52 -0400374 <module name="FileTabCharacter" />
Michael Blow6a2a4362019-03-27 14:31:16 -0400375 <module name="TreeWalker">
376 <module name="AvoidStarImport">
377 <property name="allowStaticMemberImports" value="true"/>
378 </module>
379 </module>
Michael Blowd1e2a992016-06-14 12:27:46 -0400380 </module>
381 </checkstyleRules>
Michael Blowd6cf6412016-06-30 02:44:35 -0400382 <includes>**/*.java,**/*.jj</includes>
383 <resourceIncludes>**/*.properties,**/*.xml,**/*.xsd,**/*.sh</resourceIncludes>
Michael Blowd1e2a992016-06-14 12:27:46 -0400384 <sourceDirectories>${project.build.sourceDirectory},${project.build.testSourceDirectory}</sourceDirectories>
385 </configuration>
386 </plugin>
Michael Blowf53c1c62016-06-17 16:51:59 -0400387 <plugin>
388 <groupId>org.apache.maven.plugins</groupId>
389 <artifactId>maven-enforcer-plugin</artifactId>
Michael Blow918c5b12017-10-30 14:51:13 -0400390 <version>3.0.0-M1</version>
Michael Blowf53c1c62016-06-17 16:51:59 -0400391 <executions>
392 <execution>
393 <id>enforce-versions</id>
394 <goals>
395 <goal>enforce</goal>
396 </goals>
397 <configuration>
398 <rules>
399 <requireMavenVersion>
400 <version>[3.3.9,)</version>
401 </requireMavenVersion>
402 </rules>
403 </configuration>
404 </execution>
405 </executions>
406 </plugin>
Michael Blow7626d162017-12-10 14:26:56 -0500407 <plugin>
408 <groupId>org.apache.maven.plugins</groupId>
409 <artifactId>maven-resources-plugin</artifactId>
410 <executions>
411 <execution>
412 <id>default-testResources</id>
413 <goals>
414 <goal>testResources</goal>
415 </goals>
416 <configuration>
417 <skip>${skip.testResources}</skip>
418 </configuration>
419 </execution>
420 </executions>
421 </plugin>
Michael Blowcb9ca972018-01-27 23:03:30 -0500422 <plugin>
423 <groupId>net.revelc.code.formatter</groupId>
424 <artifactId>formatter-maven-plugin</artifactId>
425 <executions>
426 <execution>
427 <goals>
428 <goal>${source-format.goal}</goal>
429 </goals>
430 </execution>
431 </executions>
432 <configuration>
433 <configFile>${root.dir}/AsterixCodeFormatProfile.xml</configFile>
434 <skipFormatting>${source-format.skip}</skipFormatting>
435 </configuration>
436 </plugin>
Michael Blowef85fb02019-03-22 13:40:35 -0400437 <plugin>
438 <groupId>net.revelc.code</groupId>
439 <artifactId>impsort-maven-plugin</artifactId>
440 <executions>
441 <execution>
442 <goals>
443 <goal>${import-sort.goal}</goal>
444 </goals>
445 </execution>
446 </executions>
447 <configuration>
448 <groups>java,javax,org,com,*</groups>
449 <removeUnused>true</removeUnused>
450 <skip>${import-sort.skip}</skip>
451 </configuration>
452 </plugin>
vinayakbe5add8a2012-10-06 19:00:14 +0000453 </plugins>
Yingyi Bud680e142016-03-18 16:41:46 -0700454 <pluginManagement>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700455 <plugins>
Michael Blow5e17af22017-02-02 10:00:44 -0500456 <plugin>
Till Westmann65da60c2017-02-22 13:17:49 -0800457 <groupId>org.apache.maven.plugins</groupId>
458 <artifactId>maven-compiler-plugin</artifactId>
Michael Blow3477a2b2018-10-04 17:17:35 -0400459 <version>3.8.0</version>
Till Westmann65da60c2017-02-22 13:17:49 -0800460 </plugin>
461 <plugin>
Michael Blow5e17af22017-02-02 10:00:44 -0500462 <groupId>org.apache.rat</groupId>
463 <artifactId>apache-rat-plugin</artifactId>
464 <version>0.12</version>
465 </plugin>
Dmitry Lychagin249be532017-05-31 14:57:14 -0700466 <plugin>
467 <groupId>net.revelc.code.formatter</groupId>
468 <artifactId>formatter-maven-plugin</artifactId>
469 <version>2.0.1</version>
470 </plugin>
Michael Blowef85fb02019-03-22 13:40:35 -0400471 <plugin>
472 <groupId>net.revelc.code</groupId>
473 <artifactId>impsort-maven-plugin</artifactId>
474 <version>1.2.0</version>
475 </plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700476 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
477 <plugin>
478 <groupId>org.eclipse.m2e</groupId>
479 <artifactId>lifecycle-mapping</artifactId>
480 <version>1.0.0</version>
481 <configuration>
482 <lifecycleMappingMetadata>
483 <pluginExecutions>
484 <pluginExecution>
485 <pluginExecutionFilter>
486 <groupId>org.apache.rat</groupId>
487 <artifactId>apache-rat-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400488 <versionRange>[0.0,)</versionRange>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700489 <goals>
490 <goal>check</goal>
491 </goals>
492 </pluginExecutionFilter>
493 <action>
Michael Blow380b0a22016-08-02 13:05:52 -0400494 <ignore />
Michael Blowb4c1fb02016-05-09 15:41:00 -0700495 </action>
496 </pluginExecution>
Michael Blow8f2cf242016-06-30 01:45:39 -0400497 <pluginExecution>
498 <pluginExecutionFilter>
499 <groupId>org.apache.maven.plugins</groupId>
500 <artifactId>maven-checkstyle-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400501 <versionRange>[0.0,)</versionRange>
Michael Blow8f2cf242016-06-30 01:45:39 -0400502 <goals>
503 <goal>check</goal>
504 </goals>
505 </pluginExecutionFilter>
506 <action>
Michael Blow380b0a22016-08-02 13:05:52 -0400507 <ignore />
Michael Blow8f2cf242016-06-30 01:45:39 -0400508 </action>
509 </pluginExecution>
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700510 <pluginExecution>
511 <pluginExecutionFilter>
512 <groupId>org.apache.maven.plugins</groupId>
513 <artifactId>maven-dependency-plugin</artifactId>
Michael Blow09f958c2017-08-20 17:02:19 -0400514 <versionRange>[0.0,)</versionRange>
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700515 <goals>
516 <goal>analyze-only</goal>
517 </goals>
518 </pluginExecutionFilter>
519 <action>
Ian Maxondef643d2017-01-18 18:31:11 -0800520 <ignore />
Taewoo Kim6ae219d2016-10-19 17:32:35 -0700521 </action>
522 </pluginExecution>
Taewoo Kima252d782018-01-30 13:29:07 -0800523 <pluginExecution>
524 <pluginExecutionFilter>
Abdullah Alamoudi4ff6a362018-02-12 09:24:15 -0800525 <groupId>net.revelc.code.formatter</groupId>
526 <artifactId>formatter-maven-plugin</artifactId>
527 <versionRange>[2.0.1,)</versionRange>
528 <goals>
529 <goal>format</goal>
530 </goals>
531 </pluginExecutionFilter>
532 <action>
533 <ignore></ignore>
534 </action>
Taewoo Kima252d782018-01-30 13:29:07 -0800535 </pluginExecution>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700536 </pluginExecutions>
537 </lifecycleMappingMetadata>
538 </configuration>
539 </plugin>
Ian Maxon99fed932017-02-09 19:11:39 -0800540 <plugin>
Michael Blowa7fad192017-03-09 22:10:19 -0500541 <groupId>org.codehaus.mojo</groupId>
542 <artifactId>versions-maven-plugin</artifactId>
Michael Blow0aae1832017-10-29 11:59:47 -0400543 <version>2.5</version>
Ian Maxon99fed932017-02-09 19:11:39 -0800544 </plugin>
545 <plugin>
Michael Blowa7fad192017-03-09 22:10:19 -0500546 <groupId>org.apache.maven.plugins</groupId>
547 <artifactId>maven-scm-plugin</artifactId>
548 <version>1.9.5</version>
549 </plugin>
550 <plugin>
551 <groupId>org.codehaus.mojo</groupId>
552 <artifactId>appassembler-maven-plugin</artifactId>
553 <version>2.0.0</version>
Ian Maxon99fed932017-02-09 19:11:39 -0800554 </plugin>
Michael Blow10a74862017-05-23 16:55:39 -0400555 <plugin>
556 <groupId>org.apache.maven.plugins</groupId>
557 <artifactId>maven-surefire-plugin</artifactId>
Michael Blowaebe2c52018-06-10 14:18:53 -0400558 <version>2.21.0</version>
Michael Blow10a74862017-05-23 16:55:39 -0400559 </plugin>
560 <plugin>
561 <groupId>org.apache.maven.plugins</groupId>
562 <artifactId>maven-failsafe-plugin</artifactId>
Michael Blowaebe2c52018-06-10 14:18:53 -0400563 <version>2.21.0</version>
Michael Blow10a74862017-05-23 16:55:39 -0400564 </plugin>
Michael Blow09f958c2017-08-20 17:02:19 -0400565 <plugin>
566 <groupId>org.apache.hyracks</groupId>
567 <artifactId>license-automation-plugin</artifactId>
568 <version>${project.version}</version>
569 </plugin>
Michael Blow0aae1832017-10-29 11:59:47 -0400570 <plugin>
571 <groupId>org.apache.maven.plugins</groupId>
572 <artifactId>maven-assembly-plugin</artifactId>
573 <version>3.1.0</version>
574 </plugin>
575 <plugin>
576 <groupId>org.apache.maven.plugins</groupId>
577 <artifactId>maven-antrun-plugin</artifactId>
578 <version>1.8</version>
579 </plugin>
580 <plugin>
581 <groupId>org.apache.maven.plugins</groupId>
582 <artifactId>maven-clean-plugin</artifactId>
583 <version>3.0.0</version>
584 </plugin>
585 <plugin>
586 <groupId>org.apache.maven.plugins</groupId>
587 <artifactId>maven-jar-plugin</artifactId>
588 <version>3.0.2</version>
589 </plugin>
590 <plugin>
591 <groupId>org.codehaus.mojo</groupId>
592 <artifactId>build-helper-maven-plugin</artifactId>
593 <version>3.0.0</version>
594 </plugin>
595 <plugin>
596 <groupId>org.apache.maven.plugins</groupId>
597 <artifactId>maven-dependency-plugin</artifactId>
Michael Blowcedd9612018-07-25 13:25:02 -0400598 <version>3.1.1</version>
Michael Blow0aae1832017-10-29 11:59:47 -0400599 </plugin>
Michael Blow918c5b12017-10-30 14:51:13 -0400600 <plugin>
601 <groupId>org.apache.maven.doxia</groupId>
602 <artifactId>doxia-maven-plugin</artifactId>
603 <version>1.1.4</version>
604 </plugin>
Michael Blowb4c1fb02016-05-09 15:41:00 -0700605 </plugins>
606 </pluginManagement>
vinayakbe5add8a2012-10-06 19:00:14 +0000607 </build>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800608 <profiles>
609 <profile>
Michael Blow916dce42017-05-23 13:19:12 -0400610 <id>skip-assembly</id>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700611 <activation>
612 <file>
Michael Blow916dce42017-05-23 13:19:12 -0400613 <missing>src/main/assembly/source.xml</missing>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700614 </file>
615 </activation>
Michael Blow916dce42017-05-23 13:19:12 -0400616 <properties>
617 <skip.assembly>true</skip.assembly>
618 </properties>
619 </profile>
620 <profile>
621 <id>release</id>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700622 <build>
623 <plugins>
624 <plugin>
625 <groupId>org.apache.maven.plugins</groupId>
Michael Blow38ca9622018-02-28 11:44:43 -0500626 <artifactId>maven-jar-plugin</artifactId>
627 <configuration>
628 <archive>
Michael Blowaed96f02019-03-01 18:47:19 -0500629 <addMavenDescriptor>true</addMavenDescriptor>
Michael Blow38ca9622018-02-28 11:44:43 -0500630 <manifest>
631 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
632 <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
633 </manifest>
634 </archive>
635 </configuration>
636 </plugin>
637 <plugin>
638 <groupId>org.apache.maven.plugins</groupId>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700639 <artifactId>maven-assembly-plugin</artifactId>
640 <!-- We override the configuration plugin to override the descriptor to use for building
641 the source release zip. Specifically, we would like to control the inclusions/exclusions.
642 For example, we exclude the KEYS file from the zip -->
643 <executions>
644 <execution>
645 <!-- Use this id to match the id mentioned in the assembly plugin configuration in
646 the apache parent POM under the apache-release profile -->
647 <id>source-release-assembly</id>
648 <phase>package</phase>
649 <goals>
650 <goal>single</goal>
651 </goals>
652 <!-- combine.self should be override to replace the configuration in the parent POM -->
653 <configuration combine.self="override">
654 <descriptors>
655 <descriptor>src/main/assembly/source.xml</descriptor>
656 </descriptors>
Michael Blow916dce42017-05-23 13:19:12 -0400657 <skipAssembly>${skip.assembly}</skipAssembly>
Ian Maxon4c9260c2017-04-01 10:12:36 -0700658 </configuration>
659 </execution>
660 </executions>
661 </plugin>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700662 <plugin>
663 <groupId>org.apache.maven.plugins</groupId>
Ian Maxon99fed932017-02-09 19:11:39 -0800664 <artifactId>maven-gpg-plugin</artifactId>
665 <version>1.6</version>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700666 <executions>
667 <execution>
Ian Maxon99fed932017-02-09 19:11:39 -0800668 <id>sign-artifacts</id>
669 <phase>verify</phase>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700670 <goals>
Ian Maxon99fed932017-02-09 19:11:39 -0800671 <goal>sign</goal>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700672 </goals>
Chris Hillery1fda6bc2015-10-02 17:18:11 -0700673 </execution>
674 </executions>
675 </plugin>
676 </plugins>
677 </build>
678 </profile>
Ian Maxon5ae0df82015-10-14 10:45:19 -0700679 <profile>
Michael Blow7c15c132016-05-04 22:06:34 -0400680 <id>coverage</id>
681 <activation>
682 <property>
683 <name>coverage</name>
684 </property>
685 </activation>
686 <build>
687 <plugins>
688 <plugin>
689 <groupId>org.jacoco</groupId>
690 <artifactId>jacoco-maven-plugin</artifactId>
691 <version>${jacoco.version}</version>
692 <executions>
693 <execution>
694 <id>default-prepare-agent</id>
695 <goals>
696 <goal>prepare-agent</goal>
697 </goals>
698 <configuration>
699 <propertyName>coverageArgLine</propertyName>
700 </configuration>
701 </execution>
702 <execution>
703 <id>default-prepare-agent-integration</id>
704 <goals>
705 <goal>prepare-agent-integration</goal>
706 </goals>
707 <configuration>
708 <propertyName>coverageArgLine</propertyName>
709 </configuration>
710 </execution>
711 </executions>
712 </plugin>
713 </plugins>
714 </build>
715 <properties>
Michael Blow380b0a22016-08-02 13:05:52 -0400716 <coverage />
Michael Blow7c15c132016-05-04 22:06:34 -0400717 </properties>
718 </profile>
719 <profile>
720 <id>no-coverage</id>
721 <activation>
722 <property>
723 <name>!coverage</name>
724 </property>
725 </activation>
726 <properties>
Michael Blow380b0a22016-08-02 13:05:52 -0400727 <coverageArgLine />
Michael Blow7c15c132016-05-04 22:06:34 -0400728 </properties>
729 </profile>
730 <profile>
Michael Blow64d49fb2018-02-11 15:43:47 -0500731 <id>integration-tests-only</id>
732 <properties>
733 <test.includes/>
734 <failIfNoTests>false</failIfNoTests>
735 </properties>
736 </profile>
Michael Blowcedd9612018-07-25 13:25:02 -0400737 <profile>
738 <id>java8</id>
739 <activation>
740 <jdk>1.8</jdk>
741 </activation>
742 <properties>
743 <target.jdk.version>8</target.jdk.version>
744 </properties>
745 </profile>
746 <profile>
747 <id>java9</id>
748 <activation>
749 <jdk>9</jdk>
750 </activation>
751 <properties>
752 <target.jdk.version>9</target.jdk.version>
753 </properties>
754 </profile>
755 <profile>
756 <id>java10</id>
757 <activation>
758 <jdk>10</jdk>
759 </activation>
760 <properties>
761 <target.jdk.version>10</target.jdk.version>
762 </properties>
763 </profile>
764 <profile>
765 <id>java11</id>
766 <activation>
767 <jdk>11</jdk>
768 </activation>
769 <properties>
Michael Blow3477a2b2018-10-04 17:17:35 -0400770 <!-- several plugins do not yet support Java 11 classes (maven-plugin-plugin, maven-dependency-plugin) -->
771 <target.jdk.version>10</target.jdk.version>
Michael Blowcedd9612018-07-25 13:25:02 -0400772 </properties>
773 </profile>
774 <profile>
775 <id>java8-bootclasspath</id>
776 <activation>
777 <property>
778 <name>java8-bootclasspath</name>
779 </property>
780 </activation>
781 <properties>
782 <target.jdk.version>8</target.jdk.version>
783 </properties>
784 <build>
785 <plugins>
786 <plugin>
787 <groupId>org.apache.maven.plugins</groupId>
788 <artifactId>maven-compiler-plugin</artifactId>
789 <configuration>
790 <compilerArgs combine.children="append">
791 <arg>-bootclasspath</arg>
792 <arg>${java8-bootclasspath}</arg>
793 </compilerArgs>
794 </configuration>
795 </plugin>
796 </plugins>
797 </build>
798 </profile>
Chris Hilleryc9d8f922014-03-06 01:44:19 -0800799 </profiles>
vinayakbe5add8a2012-10-06 19:00:14 +0000800 <modules>
801 <module>hyracks</module>
vinayakb36016dc2012-10-09 06:10:12 +0000802 <module>algebricks</module>
Michael Blow43b40b62017-01-14 17:03:12 -0500803 <module>hyracks-fullstack-license</module>
vinayakbe5add8a2012-10-06 19:00:14 +0000804 </modules>
Michael Blow3477a2b2018-10-04 17:17:35 -0400805</project>