ref #10009 try to remove hibernate-commons-annotations
[taxeditor.git] / eu.etaxonomy.taxeditor.cdmlib / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4 <parent>
5 <groupId>eu.etaxonomy</groupId>
6 <artifactId>taxeditor-parent</artifactId>
7 <version>5.33.0-SNAPSHOT</version>
8 </parent>
9 <modelVersion>4.0.0</modelVersion>
10 <artifactId>eu.etaxonomy.taxeditor.cdmlib</artifactId>
11 <packaging>eclipse-plugin</packaging>
12 <properties>
13 <jackson.version>2.13.3</jackson.version>
14 <poi.version>4.1.2</poi.version>
15 <hibernate.version>5.4.33.Final</hibernate.version>
16 <lucene.version>5.5.5</lucene.version>
17 <spring.version>4.3.30.RELEASE</spring.version> <!-- checked 2021-12, further upgrade possible -->
18 <spring-security.version>4.2.20.RELEASE</spring-security.version> <!-- checked 2021-12, further upgrade possible -->
19 <aspectj.version>1.9.7</aspectj.version>
20 </properties>
21 <name>CDM Library Dependencies Plugin</name>
22 <description>CDM Library and dependencies as a plugin</description>
23 <build>
24 <pluginManagement>
25 <plugins>
26 <plugin>
27 <groupId>org.apache.maven.plugins</groupId>
28 <artifactId>maven-surefire-plugin</artifactId>
29 <version>3.0.0-M7</version>
30 </plugin>
31 </plugins>
32 </pluginManagement>
33 <plugins>
34 <plugin>
35 <groupId>org.apache.maven.plugins</groupId>
36 <artifactId>maven-dependency-plugin</artifactId>
37 <version>3.2.0</version>
38 <executions>
39 <execution>
40 <id>copy-dependencies</id>
41 <phase>validate</phase>
42 <goals>
43 <goal>copy-dependencies</goal>
44 </goals>
45 <configuration>
46 <excludeArtifactIds>
47 cdmlib-remote-webapp
48 </excludeArtifactIds>
49 <includeArtifactIds>
50 cdmlib-commons,cdmlib-model,cdmlib-api,cdmlib-persistence,cdmlib-services,cdmlib-cache,cdmlib-ext,cdmlib-io
51 </includeArtifactIds>
52 <outputDirectory>${basedir}/lib</outputDirectory>
53 <overWriteReleases>true</overWriteReleases>
54 <overWriteSnapshots>true</overWriteSnapshots>
55 <excludeTransitive>true</excludeTransitive>
56 </configuration>
57 </execution>
58 <execution>
59 <id>copy-dependency-jars</id>
60 <phase>validate</phase>
61 <goals>
62 <goal>copy-dependencies</goal>
63 </goals>
64 <configuration>
65 <includeArtifactIds>
66 httpclient,JavaAPIforKml,iiif-apis,commons-lang3,commons-lang,commons-text,
67 commons-codec,commons-io,
68 hibernate-search-engine,hibernate-search-orm,
69 json,json-lib,
70 log4j-core,log4j-api,slf4j-api,jboss-logging,jcl-over-slf4j,log4j-slf4j-impl,
71 lucene-analyzers-common,lucene-core,lucene-queryparser,lucene-suggest,lucene-sandbox,
72 jackson-databind,jackson-annotations,jackson-core,
73 jakarta.validation-api,
74 ehcache,
75 hibernate-validator,
76 spring-context,spring-context-support,spring-aspects,spring-beans,
77 spring-tx,spring-web,spring-core,spring-aop,spring-orm,
78 spring-jdbc,spring-security-config,spring-security-core,
79 aspectjweaver,
80 byte-buddy,
81 hibernate-core,hibernate-envers,antlr,
82 javax.persistence-api,
83 xml-apis,lsid-client,jdom,
84 commons-collections4,commons-math3,
85 c3p0,mchange-commons-java,
86 opencsv,joda-time,
87 h2,mysql-connector-java,postgresql,
88 junit,hamcrest-core,commons-dbcp,commons-pool,
89 jboss-transaction-api_1.2_spec
90 </includeArtifactIds>
91 <outputDirectory>
92 ${basedir}/lib
93 </outputDirectory>
94 <overWriteReleases>true</overWriteReleases>
95 <overWriteSnapshots>true</overWriteSnapshots>
96 <excludeTransitive>true</excludeTransitive>
97 </configuration>
98 </execution>
99 <execution>
100 <id>copy-dependency-jars-transitive</id>
101 <phase>validate</phase>
102 <goals>
103 <goal>copy-dependencies</goal>
104 </goals>
105 <configuration>
106 <includeArtifactIds>
107 httpclient-cache,httpcore
108 </includeArtifactIds>
109 <outputDirectory>
110 ${basedir}/lib
111 </outputDirectory>
112 <overWriteReleases>true</overWriteReleases>
113 <overWriteSnapshots>true</overWriteSnapshots>
114 <excludeTransitive>false</excludeTransitive>
115 </configuration>
116 </execution>
117 </executions>
118 </plugin>
119 <plugin>
120 <groupId>org.apache.maven.plugins</groupId>
121 <artifactId>maven-antrun-plugin</artifactId>
122 <executions>
123 <execution>
124 <id>update-snapshot-jar-names</id>
125 <phase>validate</phase>
126 <goals>
127 <goal>run</goal>
128 </goals>
129 <configuration>
130 <target>
131 <echo>Update cdmlib jars to SNAPSHOT when build with
132 timestamp
133 </echo>
134 <move todir="./lib">
135 <fileset dir="./lib" />
136 <mapper type="regexp"
137 from="(^cdmlib\-.*\-\d+\.\d+\.\d+\-)[\d.-]+(\.jar)"
138 to="\1SNAPSHOT\2" />
139 </move>
140 <move todir="./lib">
141 <fileset dir="./lib" />
142 <mapper type="regexp"
143 from="(^cdmlib\-.*\-\d+\.\d+\.\d+\-)[\d.-]+(\-sources\.jar)"
144 to="\1SNAPSHOT\2" />
145 </move>
146 </target>
147 </configuration>
148 </execution>
149 <execution>
150 <id>remove-existing-jars</id>
151 <phase>clean</phase>
152 <goals>
153 <goal>run</goal>
154 </goals>
155 <configuration>
156 <target>
157 <echo>Remove all cdmlib jars</echo>
158 <delete>
159 <fileset dir="./lib" includes="cdmlib-*" />
160 </delete>
161 </target>
162 </configuration>
163 </execution>
164 </executions>
165 </plugin>
166 </plugins>
167 </build>
168 <profiles>
169 <profile>
170 <id>copyAllJars</id>
171 <build>
172 <plugins>
173 <plugin>
174 <groupId>org.apache.maven.plugins</groupId>
175 <artifactId>maven-dependency-plugin</artifactId>
176 <version>3.2.0</version>
177 <executions>
178 <execution>
179 <id>copy-all-dependencies</id>
180 <phase>validate</phase>
181 <goals>
182 <goal>copy-dependencies</goal>
183 </goals>
184 <configuration>
185 <excludeArtifactIds>
186 cdmlib-remote-webapp
187 </excludeArtifactIds>
188 <outputDirectory>${basedir}/lib</outputDirectory>
189 <overWriteReleases>true</overWriteReleases>
190 <overWriteSnapshots>true</overWriteSnapshots>
191 <excludeTransitive>true</excludeTransitive>
192 </configuration>
193 </execution>
194 </executions>
195 </plugin>
196 </plugins>
197 </build>
198 </profile>
199 </profiles>
200 <dependencies>
201
202 <!-- direct dependencies (used within this module) -->
203
204 <!-- used e.g. in CdmApplicationRemoteConfiguration -->
205 <dependency>
206 <!-- used e.g. by CdmServiceCacher -->
207 <groupId>eu.etaxonomy</groupId>
208 <artifactId>cdmlib-cache</artifactId>
209 <version>${cdmlib.version}</version>
210 </dependency>
211 <dependency>
212 <!-- used e.g. by CdmApplicationState -->
213 <groupId>eu.etaxonomy</groupId>
214 <artifactId>cdmlib-commons</artifactId>
215 <version>${cdmlib.version}</version>
216 </dependency>
217 <dependency>
218 <!-- used e.g. by CdmChangeEvent -->
219 <groupId>eu.etaxonomy</groupId>
220 <artifactId>cdmlib-model</artifactId>
221 <version>${cdmlib.version}</version>
222 </dependency>
223 <dependency>
224 <groupId>eu.etaxonomy</groupId>
225 <artifactId>cdmlib-io</artifactId>
226 <version>${cdmlib.version}</version>
227 </dependency>
228 <dependency>
229 <groupId>eu.etaxonomy</groupId>
230 <artifactId>cdmlib-ext</artifactId>
231 <version>${cdmlib.version}</version>
232 </dependency>
233 <dependency>
234 <groupId>eu.etaxonomy</groupId>
235 <artifactId>cdmlib-persistence</artifactId>
236 <version>${cdmlib.version}</version>
237 </dependency>
238 <dependency>
239 <groupId>eu.etaxonomy</groupId>
240 <artifactId>cdmlib-services</artifactId>
241 <version>${cdmlib.version}</version>
242 </dependency>
243 <dependency>
244 <groupId>org.springframework</groupId>
245 <!-- used e.g. by CachingHttpInvokerProxyFactoryBean -->
246 <artifactId>spring-aop</artifactId>
247 <version>${spring.version}</version>
248 </dependency>
249 <dependency>
250 <groupId>org.springframework</groupId>
251 <artifactId>spring-beans</artifactId>
252 <version>${spring.version}</version>
253 </dependency>
254 <dependency>
255 <groupId>org.springframework</groupId>
256 <artifactId>spring-context</artifactId>
257 <version>${spring.version}</version>
258 </dependency>
259 <dependency>
260 <groupId>org.springframework</groupId>
261 <artifactId>spring-core</artifactId>
262 <version>${spring.version}</version>
263 </dependency>
264 <dependency>
265 <groupId>org.springframework</groupId>
266 <artifactId>spring-tx</artifactId>
267 <version>${spring.version}</version>
268 </dependency>
269 <dependency>
270 <groupId>org.springframework</groupId>
271 <artifactId>spring-web</artifactId>
272 <version>${spring.version}</version>
273 </dependency>
274 <dependency>
275 <groupId>org.springframework.security</groupId>
276 <artifactId>spring-security-core</artifactId>
277 <version>${spring-security.version}</version>
278 </dependency>
279 <dependency>
280 <!-- used e.g. by CdmLazyLoader -->
281 <groupId>org.hibernate</groupId>
282 <artifactId>hibernate-core</artifactId>
283 <version>${hibernate.version}</version>
284 </dependency>
285 <dependency>
286 <groupId>org.apache.commons</groupId>
287 <artifactId>commons-lang3</artifactId>
288 <version>3.12.0</version>
289 </dependency>
290 <dependency>
291 <!-- used e.g. by CdmServerUtils -->
292 <groupId>commons-io</groupId>
293 <artifactId>commons-io</artifactId>
294 <version>2.11.0</version>
295 </dependency>
296 <dependency>
297 <!-- used e.g. by CdmServerUtils -->
298 <groupId>org.apache.commons</groupId>
299 <artifactId>commons-text</artifactId>
300 <version>1.9</version>
301 </dependency>
302 <dependency>
303 <!-- used in AuthenticatingHttpInvokerRequestExecutor -->
304 <groupId>commons-codec</groupId>
305 <artifactId>commons-codec</artifactId>
306 <version>1.15</version>
307 </dependency>
308 <dependency>
309 <!-- CdmServiceCacher -->
310 <groupId>org.apache.logging.log4j</groupId>
311 <artifactId>log4j-core</artifactId>
312 <version>${log4j.version}</version>
313 </dependency>
314 <dependency>
315 <!-- CdmServiceCacher -->
316 <groupId>org.apache.logging.log4j</groupId>
317 <artifactId>log4j-api</artifactId>
318 <version>${log4j.version}</version>
319 </dependency>
320 <dependency>
321 <groupId>org.aspectj</groupId>
322 <!-- used e.g. by CdmLazyLoader -->
323 <artifactId>aspectjweaver</artifactId>
324 <version>${aspectj.version}</version>
325 </dependency>
326 <dependency>
327 <groupId>org.apache.httpcomponents</groupId>
328 <artifactId>httpclient</artifactId>
329 <!-- version defined in parent pom -->
330 </dependency>
331 <dependency>
332 <!-- used e.g. by CdmServerInfo -->
333 <groupId>org.apache.httpcomponents</groupId>
334 <artifactId>httpcore</artifactId>
335 <version>4.4.15</version>
336 </dependency>
337 <dependency>
338 <!-- used e.g. by CdmServerInfo -->
339 <groupId>org.json</groupId>
340 <artifactId>json</artifactId>
341 <version>20220320</version>
342 </dependency>
343 <dependency>
344 <!-- used e.g. by CdmServerInfo -->
345 <groupId>com.fasterxml.jackson.core</groupId>
346 <artifactId>jackson-core</artifactId>
347 <version>${jackson.version}</version>
348 </dependency>
349 <dependency>
350 <!-- used e.g. by CdmServerInfo -->
351 <groupId>com.fasterxml.jackson.core</groupId>
352 <artifactId>jackson-databind</artifactId>
353 <version>${jackson.version}</version>
354 </dependency>
355 <dependency>
356 <!-- used e.g. by ICdmEntitySession -->
357 <groupId>net.sf.ehcache</groupId>
358 <artifactId>ehcache</artifactId>
359 <version>2.10.6</version>
360 </dependency>
361 <dependency>
362 <!-- used e.g. by CdmPersistentRemoteSource -->
363 <groupId>org.jdom</groupId>
364 <artifactId>jdom</artifactId>
365 <version>1.1.3</version>
366 </dependency>
367
368 <!-- indirectly used with compile error -->
369 <dependency>
370 <!-- indirectly used e.g. by AbstractPersistentCollection -->
371 <groupId>javax.persistence</groupId>
372 <artifactId>javax.persistence-api</artifactId>
373 <version>2.2</version>
374 </dependency>
375 <dependency>
376 <!-- indirectly used e.g. by AbstractPersistentCollection -->
377 <groupId>org.jboss.logging</groupId>
378 <artifactId>jboss-logging</artifactId>
379 <version>3.4.3.Final</version>
380 </dependency>
381
382 <!-- indirectly used, by other taxeditor modules -->
383 <!-- ... by taxeditor.local -->
384 <dependency>
385 <groupId>eu.etaxonomy</groupId>
386 <artifactId>cdmlib-api</artifactId>
387 <version>${cdmlib.version}</version>
388 </dependency>
389
390 <!-- ... by taxeditor.store -->
391 <dependency>
392 <groupId>joda-time</groupId>
393 <artifactId>joda-time</artifactId>
394 <version>2.10.14</version>
395 </dependency>
396 <dependency>
397 <groupId>net.sf.opencsv</groupId>
398 <artifactId>opencsv</artifactId>
399 <version>2.3</version>
400 </dependency>
401 <dependency>
402 <groupId>org.springframework</groupId>
403 <artifactId>spring-aspects</artifactId>
404 <version>${spring.version}</version>
405 </dependency>
406 <dependency>
407 <groupId>com.ibm.lsid</groupId>
408 <artifactId>lsid-client</artifactId>
409 <version>1.1.2</version>
410 </dependency>
411
412 <!-- used by taxeditor.editor -> character matrix -->
413 <dependency>
414 <groupId>org.apache.commons</groupId>
415 <artifactId>commons-math3</artifactId>
416 <version>3.6.1</version>
417 </dependency>
418
419 <!-- used by bulkeditor -->
420 <dependency>
421 <!-- used by CharacterMatrix/bulkeditor (LinkedList) -->
422 <groupId>org.apache.commons</groupId>
423 <artifactId>commons-collections4</artifactId>
424 <version>4.4</version>
425 </dependency>
426
427 <!-- used by taxeditor.local -->
428 <dependency>
429 <!-- used by datasource dialogue finish button -->
430 <groupId>com.mchange</groupId>
431 <artifactId>mchange-commons-java</artifactId>
432 <version>0.2.11</version>
433 </dependency>
434
435 <!-- needed by taxeditor.test during test run, maybe move to test package only -->
436 <dependency>
437 <!-- used by hibernate -->
438 <groupId>net.bytebuddy</groupId>
439 <artifactId>byte-buddy</artifactId>
440 <version>1.12.10</version>
441 </dependency>
442 <dependency>
443 <!-- dependency of xerces -->
444 <groupId>xml-apis</groupId>
445 <artifactId>xml-apis</artifactId>
446 <version>1.4.01</version>
447 </dependency>
448 <!-- needed only for H2Local and unitils, move maybe to test + local together with c3p0 -->
449 <dependency>
450 <groupId>commons-pool</groupId>
451 <artifactId>commons-pool</artifactId>
452 <version>1.6</version>
453 </dependency>
454
455 <!-- For Unit Tests Start -->
456 <!-- keep junit and its dependency hamcrest here as long as each plugin
457 has its own unit tests and junit is not yet added there in a way
458 that it does not appear in production bundles -->
459 <dependency>
460 <groupId>junit</groupId>
461 <artifactId>junit</artifactId>
462 <version>4.13.2</version>
463 <scope>test</scope>
464 </dependency>
465 <dependency>
466 <groupId>org.hamcrest</groupId>
467 <artifactId>hamcrest-core</artifactId>
468 <version>1.3</version>
469 <!-- <scope>test</scope> -->
470 </dependency>
471
472 <!-- END for Unit Tests -->
473
474 <!-- required during RUNTIME -->
475
476 <dependency>
477 <!-- throws exception in bulk editor after search if not present -->
478 <groupId>org.hibernate</groupId>
479 <artifactId>hibernate-envers</artifactId>
480 <version>${hibernate.version}</version>
481 </dependency>
482 <dependency>
483 <!-- throws exception in bulk editor after search during deserialization if not present -->
484 <groupId>org.apache.lucene</groupId>
485 <artifactId>lucene-core</artifactId>
486 <version>${lucene.version}</version>
487 </dependency>
488 <dependency>
489 <!-- e.g. when opening character matrix
490 probably only used by hibernate-core, so remove when removing hibernate-core -->
491 <groupId>antlr</groupId>
492 <artifactId>antlr</artifactId>
493 <version>2.7.7</version>
494 </dependency>
495 <dependency>
496 <!-- used e.g. by login dialog, CdmServerInfo:411 -->
497 <groupId>com.fasterxml.jackson.core</groupId>
498 <artifactId>jackson-annotations</artifactId>
499 <version>${jackson.version}</version>
500 </dependency>
501 <dependency>
502 <!-- for any transactions, e.g. when first time logging in -->
503 <groupId>org.jboss.spec.javax.transaction</groupId>
504 <artifactId>jboss-transaction-api_1.2_spec</artifactId>
505 <version>1.1.1.Final</version>
506 </dependency>
507
508 <dependency>
509 <!-- for showing maps in distribution details view -->
510 <groupId>de.micromata.jak</groupId>
511 <!-- Java11 required <groupId>uk.m0nom</groupId> -->
512 <artifactId>JavaAPIforKml</artifactId>
513 <version>2.2.1</version>
514 </dependency>
515
516 <dependency>
517 <!-- used in datasource view and in test, maybe enough if in taxeditor.local and taxeditor.test -->
518 <groupId>com.mchange</groupId>
519 <artifactId>c3p0</artifactId>
520 <version>0.9.5.2</version>
521 </dependency>
522
523 <!-- database related, should be moved to local/test when possible -->
524 <!-- only for supporting test button in datasource dialogue, dialogue should be moved to taxeditor.webapp -->
525 <dependency>
526 <groupId>mysql</groupId>
527 <artifactId>mysql-connector-java</artifactId>
528 <version>8.0.29</version>
529 </dependency>
530 <dependency>
531 <groupId>com.h2database</groupId>
532 <artifactId>h2</artifactId>
533 <version>1.4.190</version>
534 </dependency>
535 <dependency>
536 <groupId>org.postgresql</groupId>
537 <artifactId>postgresql</artifactId>
538 <version>42.3.6</version>
539 </dependency>
540
541 <!-- Only added for correct package export, but reported as needed -->
542
543 <!-- dbcp and pool needed for H2Local and unitils,
544 move to taxeditor.webapp and taxedtior.test once all db dependencies are moved to webapp-->
545 <dependency>
546 <groupId>commons-dbcp</groupId>
547 <artifactId>commons-dbcp</artifactId>
548 <version>1.4</version>
549 </dependency>
550
551 <!-- For Hibernate Mapping Start -->
552 <dependency>
553 <groupId>jakarta.validation</groupId>
554 <artifactId>jakarta.validation-api</artifactId>
555 <version>3.0.2</version>
556 </dependency>
557
558 <!-- needed at least in taxeditor.test by BundleLoader; try to move there but test carefully -->
559 <dependency>
560 <groupId>commons-lang</groupId>
561 <artifactId>commons-lang</artifactId>
562 <version>2.6</version>
563 </dependency>
564 <dependency>
565 <!-- required when running test -->
566 <groupId>org.springframework</groupId>
567 <artifactId>spring-jdbc</artifactId>
568 <version>${spring.version}</version>
569 </dependency>
570
571 <!-- logging -->
572 <dependency>
573 <groupId>org.slf4j</groupId>
574 <artifactId>slf4j-api</artifactId>
575 <version>1.7.36</version>
576 </dependency>
577 <dependency>
578 <groupId>org.apache.logging.log4j</groupId>
579 <artifactId>log4j-slf4j-impl</artifactId>
580 <version>${log4j.version}</version>
581 </dependency>
582 <dependency>
583 <groupId>org.slf4j</groupId>
584 <artifactId>jcl-over-slf4j</artifactId>
585 <version>1.7.36</version>
586 </dependency>
587
588 <!-- Only added for correct package export -->
589 <!-- <dependency>
590 <groupId>net.sf.json-lib</groupId>
591 <artifactId>json-lib</artifactId>
592 <version>2.4</version> -->
593 <!-- classifier required as json-lib exists on maven central as json-lib-2.4-jdk15.jar and xxx-jdk13.jar, see #9887 -->
594 <!-- <classifier>jdk15</classifier>
595 </dependency> -->
596 <!--
597 <dependency>
598 <groupId>org.hibernate</groupId>
599 <artifactId>hibernate-search-orm</artifactId>
600 <version>5.11.10.Final</version>
601 </dependency>
602 <dependency>
603 <groupId>org.hibernate</groupId>
604 <artifactId>hibernate-search-engine</artifactId>
605 <version>5.11.10.Final</version>
606 </dependency>
607
608 <dependency>
609 <groupId>org.springframework</groupId>
610 <artifactId>spring-context-support</artifactId>
611 <version>${spring.version}</version>
612 </dependency>
613 <dependency>
614 <groupId>org.springframework</groupId>
615 <artifactId>spring-orm</artifactId>
616 <version>${spring.version}</version>
617 </dependency>
618 <dependency>
619 <groupId>org.springframework.security</groupId>
620 <artifactId>spring-security-config</artifactId>
621 <version>${spring-security.version}</version>
622 </dependency>
623 -->
624
625 <dependency>
626 <!-- https://stackoverflow.com/questions/38727655/maven-dependency-plugin-nosuchelementexception-for-aether-repositorysystem -->
627 <groupId>org.apache.maven.resolver</groupId>
628 <artifactId>maven-resolver-api</artifactId>
629 <version>1.4.1</version>
630 </dependency>
631
632 </dependencies>
633 </project>
634