blob: bb0414fab58791e2dcb830c3ebd852bdc5208f61 [file] [log] [blame]
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -07001<!--
2 ! 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.
18 !-->
19<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">
21 <modelVersion>4.0.0</modelVersion>
Dmitry Lychaginf024b412021-10-11 10:31:08 -070022 <groupId>org.apache.asterix</groupId>
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -070023 <artifactId>apache-asterixdb-jdbc</artifactId>
24 <version>0.9.7-SNAPSHOT</version>
25 <packaging>pom</packaging>
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -070026 <parent>
Dmitry Lychaginf024b412021-10-11 10:31:08 -070027 <groupId>org.apache</groupId>
28 <artifactId>apache</artifactId>
29 <version>18</version>
30 <relativePath />
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -070031 </parent>
32 <licenses>
33 <license>
34 <name>Apache License, Version 2.0</name>
35 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
36 <distribution>repo</distribution>
37 <comments>A business-friendly OSS license</comments>
38 </license>
39 </licenses>
40 <scm>
41 <connection>scm:git:https://github.com/apache/asterixdb-clients</connection>
42 <developerConnection>scm:git:ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-clients</developerConnection>
43 <url>https://github.com/apache/asterixdb</url>
44 <tag>HEAD</tag>
45 </scm>
46 <properties>
47 <root.dir>${basedir}</root.dir>
48 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
49 <file.encoding>UTF-8</file.encoding>
50 <source.jdk.version>8</source.jdk.version>
51 <target.jdk.version>8</target.jdk.version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -070052 <javac.xlint.value>all</javac.xlint.value>
53 <jvm.extraargs />
54 <source-format.goal>format</source-format.goal>
55 <source-format.skip>false</source-format.skip>
56 <import-sort.goal>sort</import-sort.goal>
57 <import-sort.skip>false</import-sort.skip>
58 <maven.test.skip>false</maven.test.skip>
59 <skipTests>false</skipTests>
60 <skip.surefire.tests>${skipTests}</skip.surefire.tests>
61 <skip.testResources>${maven.test.skip}</skip.testResources>
62 <test.includes>${global.test.includes}</test.includes>
63 <test.excludes>${global.test.excludes}</test.excludes>
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -070064
65 <implementation.title>Apache AsterixDB JDBC - ${project.name}</implementation.title>
66 <implementation.url>https://asterixdb.apache.org/</implementation.url>
67 <implementation.version>${project.version}</implementation.version>
68 <implementation.vendor>${project.organization.name}</implementation.vendor>
Dmitry Lychagin46179162021-10-27 15:49:48 -070069
70 <commons-lang3.version>3.12.0</commons-lang3.version>
71 <commons-collections4.version>4.4</commons-collections4.version>
72 <httpcore.version>4.4.14</httpcore.version>
73 <httpclient.version>4.5.13</httpclient.version>
74 <jackson-core.version>2.12.4</jackson-core.version>
75 <junit.version>4.13</junit.version>
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -070076 </properties>
Dmitry Lychaginf024b412021-10-11 10:31:08 -070077
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -070078 <build>
Dmitry Lychaginf024b412021-10-11 10:31:08 -070079 <plugins>
80 <plugin>
81 <groupId>org.apache.maven.plugins</groupId>
82 <artifactId>maven-jar-plugin</artifactId>
83 <configuration>
84 <excludes combine.children="append">
85 <exclude>**/DEPENDENCIES</exclude>
86 </excludes>
87 <archive>
88 <addMavenDescriptor>false</addMavenDescriptor>
89 <manifest>
90 <addDefaultImplementationEntries>false</addDefaultImplementationEntries>
91 <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
92 </manifest>
93 <manifestEntries>
94 <Implementation-Title>${implementation.title}</Implementation-Title>
95 <Implementation-URL>${implementation.url}</Implementation-URL>
96 <Implementation-Version>${implementation.version}</Implementation-Version>
97 <Implementation-Vendor>${implementation.vendor}</Implementation-Vendor>
98 </manifestEntries>
99 </archive>
100 </configuration>
101 </plugin>
102 <plugin>
103 <groupId>org.apache.maven.plugins</groupId>
104 <artifactId>maven-dependency-plugin</artifactId>
105 <configuration>
106 <failOnWarning>true</failOnWarning>
107 <outputXML>true</outputXML>
108 </configuration>
109 <executions>
110 <execution>
111 <phase>process-test-classes</phase>
112 <goals>
113 <goal>analyze-only</goal>
114 </goals>
115 </execution>
116 </executions>
117 </plugin>
118 <plugin>
119 <groupId>org.apache.rat</groupId>
120 <artifactId>apache-rat-plugin</artifactId>
121 <executions>
122 <execution>
123 <phase>validate</phase>
124 <goals>
125 <goal>check</goal>
126 </goals>
127 </execution>
128 </executions>
129 <configuration>
130 <addDefaultLicenseMatchers>false</addDefaultLicenseMatchers>
131 <consoleOutput>true</consoleOutput>
132 <licenses>
133 <license implementation="org.apache.rat.analysis.license.ApacheSoftwareLicense20" />
134 </licenses>
135 <licenseFamilies>
136 <licenseFamily implementation="org.apache.rat.license.Apache20LicenseFamily" />
137 </licenseFamilies>
138 <excludeSubProjects>true</excludeSubProjects>
139 <excludes combine.children="append">
140 <exclude>**/*.iml</exclude>
141 </excludes>
142 </configuration>
143 </plugin>
144 <plugin>
145 <groupId>org.apache.maven.plugins</groupId>
146 <artifactId>maven-surefire-plugin</artifactId>
147 <configuration>
148 <failIfNoTests>false</failIfNoTests>
149 <forkCount>1</forkCount>
150 <reuseForks>false</reuseForks>
151 <argLine>-enableassertions -Xmx2048m -Dfile.encoding=UTF-8 -Xdebug
152 -Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n ${coverageArgLine}
153 </argLine>
154 <systemPropertyVariables>
155 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
156 </systemPropertyVariables>
157 <includes>
158 <include>${test.includes}</include>
159 </includes>
160 <excludes combine.children="append">
161 <exclude>${test.excludes}</exclude>
162 </excludes>
163 <skipTests>${skip.surefire.tests}</skipTests>
164 </configuration>
165 </plugin>
166 <plugin>
167 <groupId>org.apache.maven.plugins</groupId>
168 <artifactId>maven-failsafe-plugin</artifactId>
169 <configuration>
170 <systemPropertyVariables>
171 <log4j.configurationFile>${testLog4jConfigFile}</log4j.configurationFile>
172 </systemPropertyVariables>
173 </configuration>
174 </plugin>
175 <plugin>
176 <groupId>org.apache.maven.plugins</groupId>
177 <artifactId>maven-compiler-plugin</artifactId>
178 <configuration>
179 <source>${source.jdk.version}</source>
180 <target>${target.jdk.version}</target>
181 <compilerArgument>-Xlint:${javac.xlint.value}</compilerArgument>
182 </configuration>
183 </plugin>
184 <plugin>
185 <groupId>org.apache.maven.plugins</groupId>
186 <artifactId>maven-checkstyle-plugin</artifactId>
187 <version>3.0.0</version>
188 <executions>
189 <execution>
190 <id>verify-style</id>
191 <phase>process-sources</phase>
192 <goals>
193 <goal>check</goal>
194 </goals>
195 </execution>
196 </executions>
197 <configuration>
198 <logViolationsToConsole>true</logViolationsToConsole>
199 <checkstyleRules>
200 <module name="Checker">
201 <!-- Checks for whitespace -->
202 <!-- See http://checkstyle.sf.net/config_whitespace.html -->
203 <module name="FileTabCharacter" />
204 <module name="TreeWalker">
205 <module name="AvoidStarImport">
206 <property name="allowStaticMemberImports" value="true"/>
207 </module>
208 </module>
209 </module>
210 </checkstyleRules>
211 <includes>**/*.java,**/*.jj</includes>
212 <resourceIncludes>**/*.properties,**/*.xml,**/*.xsd,**/*.sh</resourceIncludes>
213 <sourceDirectories>${project.build.sourceDirectory},${project.build.testSourceDirectory}</sourceDirectories>
214 </configuration>
215 </plugin>
216 <plugin>
217 <groupId>org.apache.maven.plugins</groupId>
218 <artifactId>maven-antrun-plugin</artifactId>
219 <executions>
220 <execution>
221 <id>check-pom-packaging</id>
222 <phase>validate</phase>
223 <goals>
224 <goal>run</goal>
225 </goals>
226 <configuration>
227 <exportAntProperties>true</exportAntProperties>
228 <target xmlns:unless="ant:unless">
229 <condition property="skipPomEnforcement">
230 <not><equals arg1="${project.packaging}" arg2="pom"/></not>
231 </condition>
232 <echo message="will enforce non-existence of test source dir due to ${project.packaging} packaging" unless:set="skipPomEnforcement"/>
233 </target>
234 </configuration>
235 </execution>
236 </executions>
237 </plugin>
238 <plugin>
239 <groupId>org.apache.maven.plugins</groupId>
240 <artifactId>maven-enforcer-plugin</artifactId>
241 <executions>
242 <execution>
243 <id>ensure-no-tests-for-pom-packaging</id>
244 <phase>validate</phase>
245 <goals>
246 <goal>enforce</goal>
247 </goals>
248 <configuration>
249 <rules>
250 <requireFilesDontExist>
251 <files>
252 <file>${project.build.testSourceDirectory}</file>
253 </files>
254 <message>#### Tests cannot exist in projects with '${project.packaging}' packaging!</message>
255 </requireFilesDontExist>
256 </rules>
257 <skip>${skipPomEnforcement}</skip>
258 </configuration>
259 </execution>
260 <execution>
261 <id>enforce-versions</id>
262 <goals>
263 <goal>enforce</goal>
264 </goals>
265 <configuration>
266 <rules>
267 <requireMavenVersion>
268 <version>[3.3.9,)</version>
269 </requireMavenVersion>
270 <requireJavaVersion>
271 <version>[11,)</version>
272 </requireJavaVersion>
273 </rules>
274 </configuration>
275 </execution>
276 <execution>
277 <id>ensure-no-duplicate-deps</id>
278 <goals>
279 <goal>enforce</goal>
280 </goals>
281 <configuration>
282 <rules>
283 <banDuplicatePomDependencyVersions/>
284 </rules>
285 </configuration>
286 </execution>
287 </executions>
288 </plugin>
289 <plugin>
290 <groupId>org.apache.maven.plugins</groupId>
291 <artifactId>maven-resources-plugin</artifactId>
292 <executions>
293 <execution>
294 <id>default-testResources</id>
295 <goals>
296 <goal>testResources</goal>
297 </goals>
298 <configuration>
299 <skip>${skip.testResources}</skip>
300 </configuration>
301 </execution>
302 </executions>
303 </plugin>
304 <plugin>
305 <groupId>net.revelc.code.formatter</groupId>
306 <artifactId>formatter-maven-plugin</artifactId>
307 <executions>
308 <execution>
309 <goals>
310 <goal>${source-format.goal}</goal>
311 </goals>
312 </execution>
313 </executions>
314 <configuration>
315 <configFile>${root.dir}/AsterixCodeFormatProfile.xml</configFile>
316 <skipFormatting>${source-format.skip}</skipFormatting>
317 </configuration>
318 </plugin>
319 <plugin>
320 <groupId>net.revelc.code</groupId>
321 <artifactId>impsort-maven-plugin</artifactId>
322 <executions>
323 <execution>
324 <goals>
325 <goal>${import-sort.goal}</goal>
326 </goals>
327 </execution>
328 </executions>
329 <configuration>
330 <groups>java,javax,org,com,*</groups>
331 <removeUnused>true</removeUnused>
332 <skip>${import-sort.skip}</skip>
333 </configuration>
334 </plugin>
335 </plugins>
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -0700336 <pluginManagement>
337 <plugins>
338 <plugin>
339 <groupId>org.apache.maven.plugins</groupId>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700340 <artifactId>maven-compiler-plugin</artifactId>
341 <version>3.8.0</version>
342 </plugin>
343 <plugin>
344 <groupId>org.apache.rat</groupId>
345 <artifactId>apache-rat-plugin</artifactId>
346 <version>0.12</version>
347 </plugin>
348 <plugin>
349 <groupId>net.revelc.code.formatter</groupId>
350 <artifactId>formatter-maven-plugin</artifactId>
351 <version>2.0.1</version>
352 </plugin>
353 <plugin>
354 <groupId>net.revelc.code</groupId>
355 <artifactId>impsort-maven-plugin</artifactId>
356 <version>1.2.0</version>
357 </plugin>
358 <plugin>
359 <groupId>org.codehaus.mojo</groupId>
360 <artifactId>versions-maven-plugin</artifactId>
361 <version>2.5</version>
362 </plugin>
363 <plugin>
364 <groupId>org.apache.maven.plugins</groupId>
365 <artifactId>maven-scm-plugin</artifactId>
366 <version>1.9.5</version>
367 </plugin>
368 <plugin>
369 <groupId>org.apache.maven.plugins</groupId>
370 <artifactId>maven-surefire-plugin</artifactId>
371 <version>2.21.0</version>
372 </plugin>
373 <plugin>
374 <groupId>org.apache.maven.plugins</groupId>
375 <artifactId>maven-failsafe-plugin</artifactId>
376 <version>2.21.0</version>
377 </plugin>
378 <plugin>
379 <groupId>org.apache.maven.plugins</groupId>
380 <artifactId>maven-assembly-plugin</artifactId>
381 <version>3.1.0</version>
382 </plugin>
383 <plugin>
384 <groupId>org.apache.maven.plugins</groupId>
385 <artifactId>maven-antrun-plugin</artifactId>
386 <version>1.8</version>
387 </plugin>
388 <plugin>
389 <groupId>org.apache.maven.plugins</groupId>
390 <artifactId>maven-clean-plugin</artifactId>
391 <version>3.0.0</version>
392 </plugin>
393 <plugin>
394 <groupId>org.apache.maven.plugins</groupId>
395 <artifactId>maven-jar-plugin</artifactId>
396 <version>3.0.2</version>
397 </plugin>
398 <plugin>
399 <groupId>org.apache.maven.plugins</groupId>
400 <artifactId>maven-dependency-plugin</artifactId>
401 <version>3.1.2</version>
402 </plugin>
403 <plugin>
404 <groupId>org.codehaus.mojo</groupId>
405 <artifactId>exec-maven-plugin</artifactId>
406 <version>1.6.0</version>
407 </plugin>
408 <plugin>
409 <groupId>org.codehaus.mojo</groupId>
410 <artifactId>build-helper-maven-plugin</artifactId>
411 <version>3.0.0</version>
412 </plugin>
413 <plugin>
414 <groupId>org.apache.maven.plugins</groupId>
415 <artifactId>maven-enforcer-plugin</artifactId>
416 <version>3.0.0-M3</version>
417 </plugin>
418 <plugin>
419 <groupId>org.apache.maven.plugins</groupId>
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -0700420 <artifactId>maven-shade-plugin</artifactId>
421 <version>3.2.4</version>
422 </plugin>
423 </plugins>
424 </pluginManagement>
425 </build>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700426
427 <dependencyManagement>
428 <dependencies>
429 <dependency>
430 <groupId>org.apache.commons</groupId>
431 <artifactId>commons-lang3</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700432 <version>${commons-lang3.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700433 </dependency>
434 <dependency>
435 <groupId>org.apache.commons</groupId>
436 <artifactId>commons-collections4</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700437 <version>${commons-collections4.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700438 </dependency>
439 <dependency>
440 <groupId>org.apache.httpcomponents</groupId>
441 <artifactId>httpcore</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700442 <version>${httpcore.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700443 </dependency>
444 <dependency>
445 <groupId>org.apache.httpcomponents</groupId>
446 <artifactId>httpclient</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700447 <version>${httpclient.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700448 </dependency>
449 <dependency>
450 <groupId>com.fasterxml.jackson.core</groupId>
451 <artifactId>jackson-databind</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700452 <version>${jackson-core.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700453 </dependency>
454 <dependency>
455 <groupId>com.fasterxml.jackson.core</groupId>
456 <artifactId>jackson-core</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700457 <version>${jackson-core.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700458 </dependency>
459 <dependency>
460 <groupId>com.fasterxml.jackson.core</groupId>
461 <artifactId>jackson-annotations</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700462 <version>${jackson-core.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700463 </dependency>
464 <dependency>
465 <groupId>junit</groupId>
466 <artifactId>junit</artifactId>
Dmitry Lychagin46179162021-10-27 15:49:48 -0700467 <version>${junit.version}</version>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700468 </dependency>
469 </dependencies>
470 </dependencyManagement>
471
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -0700472 <modules>
473 <module>asterix-jdbc-core</module>
474 <module>asterix-jdbc-driver</module>
Dmitry Lychaginf024b412021-10-11 10:31:08 -0700475 <module>asterix-jdbc-taco</module>
Dmitry Lychaginb9a7be22021-10-06 09:33:42 -0700476 </modules>
477</project>