ref #6113 add OSGeo Repository to vaadin
[cdm-vaadin.git] / 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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
3 <modelVersion>4.0.0</modelVersion>
4 <groupId>eu.etaxonomy</groupId>
5 <artifactId>cdm-vaadin</artifactId>
6 <packaging>war</packaging>
7 <version>5.15.0-SNAPSHOT</version>
8 <name>Vaadin Web Application</name>
9 <properties>
10 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
11 <vaadin.version>7.7.13</vaadin.version>
12 <vaadin-spring.version>1.2.0</vaadin-spring.version>
13 <vaadin.plugin.version>${vaadin.version}</vaadin.plugin.version>
14 <vaadin-spring-addon-eventbus.version>2.0.0.RELEASE</vaadin-spring-addon-eventbus.version>
15 <cdmlib.version>5.15.0-SNAPSHOT</cdmlib.version>
16 <unitils.version>3.4.2</unitils.version>
17 <spring-boot.version>1.3.1.RELEASE</spring-boot.version>
18 <!-- has spring 4.2.4-RELEASE as dependency -->
19 <!--
20 lucene.version must match the version as defined in cdmlib
21 -->
22 <lucene.version>5.4.1</lucene.version>
23 <maven.compiler.source>1.8</maven.compiler.source>
24 <maven.compiler.target>1.8</maven.compiler.target>
25 </properties>
26 <prerequisites>
27 <maven>3.0.5</maven>
28 </prerequisites>
29 <repositories>
30 <!-- the cdm internal repository -->
31 <repository>
32 <id>EditRepository</id>
33 <url>http://cybertaxonomy.eu/mavenrepo/</url>
34 </repository>
35 <!-- current spring source repositories -->
36 <repository>
37 <id>SpringSource Enterprise Bundle Repository - External Bundle Milestones</id>
38 <url>http://repository.springsource.com/maven/bundles/milestone</url>
39 </repository>
40 <repository>
41 <id>SpringSource Enterprise Bundle Repository - SpringSource Bundle Releases</id>
42 <url>http://repository.springsource.com/maven/bundles/release</url>
43 </repository>
44 <repository>
45 <id>SpringSource Enterprise Bundle Repository - External Bundle Releases</id>
46 <url>http://repository.springsource.com/maven/bundles/external</url>
47 </repository>
48 <repository>
49 <id>vaadin-addons</id>
50 <url>http://maven.vaadin.com/vaadin-addons</url>
51 </repository>
52 <repository>
53 <id>OSGeo Repository</id>
54 <url>https://repo.osgeo.org/repository/release/</url>
55 </repository>
56 <repository>
57 <id>vaadin-snapshots</id>
58 <url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
59 <releases>
60 <enabled>false</enabled>
61 </releases>
62 <snapshots>
63 <enabled>true</enabled>
64 </snapshots>
65 </repository>
66 </repositories>
67 <pluginRepositories>
68 <pluginRepository>
69 <id>vaadin-snapshots</id>
70 <url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
71 <releases>
72 <enabled>false</enabled>
73 </releases>
74 <snapshots>
75 <enabled>true</enabled>
76 </snapshots>
77 </pluginRepository>
78 </pluginRepositories>
79 <dependencyManagement>
80 <dependencies>
81 <dependency>
82 <groupId>eu.etaxonomy</groupId>
83 <artifactId>cdmlib-parent</artifactId>
84 <version>${cdmlib.version}</version>
85 <type>pom</type>
86 <scope>import</scope>
87 </dependency>
88 <dependency>
89 <groupId>org.springframework.boot</groupId>
90 <artifactId>spring-boot-starter-parent</artifactId>
91 <version>${spring-boot.version}</version>
92 <type>pom</type>
93 <scope>import</scope>
94 </dependency>
95 <dependency>
96 <groupId>com.vaadin</groupId>
97 <artifactId>vaadin-bom</artifactId>
98 <version>${vaadin.version}</version>
99 <type>pom</type>
100 <scope>import</scope>
101 </dependency>
102 <dependency>
103 <!-- Try updating in cdmlib to 20090211 -->
104 <groupId>org.json</groupId>
105 <artifactId>json</artifactId>
106 <version>20151123</version>
107 </dependency>
108
109 <!--
110 <dependency>
111 < ! - - FIXME move to cdmlib-test - - >
112 <groupId>org.springframework</groupId>
113 <artifactId>spring-mock</artifactId>
114 <version>4.2.3.RELEASE</version>
115 </dependency>
116 <dependency>
117 <groupId>org.seleniumhq.selenium</groupId>
118 <artifactId>selenium-api</artifactId>
119 <version>3.5.3</version>
120 </dependency>
121 <dependency>
122 <groupId>org.seleniumhq.selenium</groupId>
123 <artifactId>selenium-support</artifactId>
124 <version>3.5.3</version>
125 </dependency>
126 -->
127 </dependencies>
128 </dependencyManagement>
129 <distributionManagement>
130 <repository>
131 <uniqueVersion>false</uniqueVersion>
132 <id>cybertaxonomy.eu</id>
133 <name>Edit Maven Repository</name>
134 <url>scpexe://cybertaxonomy.eu/var/www/wp5.e-taxonomy.eu/mavenrepo/</url>
135 <layout>default</layout>
136 </repository>
137 </distributionManagement>
138 <profiles>
139 <profile>
140 <id>align-cdmlib-version</id>
141 <activation>
142 <property>
143 <name>align-cdmlib-version</name>
144 </property>
145 </activation>
146 <build>
147 <plugins>
148 <plugin>
149 <groupId>com.google.code.maven-replacer-plugin</groupId>
150 <artifactId>replacer</artifactId>
151 <version>1.5.3</version>
152 <executions>
153 <execution>
154 <phase>process-sources</phase>
155 <goals>
156 <goal>replace</goal>
157 </goals>
158 </execution>
159 </executions>
160 <configuration>
161 <file>pom.xml</file>
162 <!-- \u003C = < , \u003E = > -->
163 <token>(\u003Ccdmlib\.version\u003E)[^\u003C]*</token>
164 <value>$1${project.version}</value>
165 </configuration>
166 </plugin>
167 </plugins>
168 </build>
169 </profile>
170 <profile>
171 <id>java8-doclint-disabled</id>
172 <activation>
173 <jdk>[1.8,)</jdk>
174 </activation>
175 <properties>
176 <javadoc.opts>-Xdoclint:none</javadoc.opts>
177 </properties>
178 </profile>
179 </profiles>
180 <build>
181 <resources>
182 <resource>
183 <!-- all main resources without filtering -->
184 <directory>src/main/resources</directory>
185 </resource>
186 <resource>
187 <!-- replace the place holders like ${...} in datasources.xml -->
188 <filtering>true</filtering>
189 <directory>src/test/resources</directory>
190 <targetPath>../test-classes</targetPath>
191 <includes>
192 <include>datasources.xml</include>
193 </includes>
194 </resource>
195 <resource>
196 <!-- all other test resources without filtering -->
197 <directory>src/test/resources</directory>
198 <targetPath>../test-classes</targetPath>
199 <excludes>
200 <exclude>datasources.xml</exclude>
201 </excludes>
202 </resource>
203 </resources>
204 <plugins>
205 <plugin>
206 <groupId>org.apache.maven.plugins</groupId>
207 <artifactId>maven-resources-plugin</artifactId>
208 <version>3.0.1</version>
209 </plugin>
210 <plugin>
211 <groupId>org.apache.maven.plugins</groupId>
212 <artifactId>maven-compiler-plugin</artifactId>
213 <version>3.3</version>
214 <configuration>
215 <source>${maven.compiler.source}</source>
216 <target>${maven.compiler.target}</target>
217 <encoding>UTF-8</encoding>
218 </configuration>
219 </plugin>
220 <plugin>
221 <groupId>org.apache.maven.plugins</groupId>
222 <artifactId>maven-surefire-plugin</artifactId>
223 <version>2.19.1</version>
224 <configuration>
225 <argLine>-Xms256m -Xmx512m</argLine>
226 </configuration>
227 </plugin>
228 <!-- As we are doing "inplace" GWT compilation, ensure the widgetset -->
229 <!-- directory is cleaned properly -->
230 <plugin>
231 <artifactId>maven-clean-plugin</artifactId>
232 <version>2.4.1</version>
233 <configuration>
234 <filesets>
235 <fileset>
236 <directory>src/main/webapp/VAADIN/widgetsets</directory>
237 </fileset>
238 </filesets>
239 </configuration>
240 </plugin>
241 <plugin>
242 <groupId>org.apache.maven.plugins</groupId>
243 <artifactId>maven-javadoc-plugin</artifactId>
244 <version>2.9.1</version>
245 <configuration>
246 <additionalparam>${javadoc.opts}</additionalparam>
247 </configuration>
248 </plugin>
249 <plugin>
250 <groupId>org.apache.maven.plugins</groupId>
251 <artifactId>maven-war-plugin</artifactId>
252 <version>2.2</version>
253 <configuration>
254 <failOnMissingWebXml>false</failOnMissingWebXml>
255 <warSourceExcludes>WEB-INF/*,WEB-INF/datasources/*</warSourceExcludes>
256 </configuration>
257 </plugin>
258 <plugin>
259 <groupId>com.vaadin</groupId>
260 <artifactId>vaadin-maven-plugin</artifactId>
261 <version>${vaadin.plugin.version}</version>
262 <configuration>
263 <extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs>
264 <!-- We are doing "inplace" but into subdir VAADIN/widgetsets.
265 This way compatible with Vaadin eclipse plugin. -->
266 <webappDirectory>${basedir}/src/main/webapp/VAADIN/widgetsets</webappDirectory>
267 <hostedWebapp>${basedir}/src/main/webapp/VAADIN/widgetsets</hostedWebapp>
268 <!-- Most Vaadin apps don't need this stuff, guide that to target -->
269 <persistentunitcachedir>${project.build.directory}</persistentunitcachedir>
270 <deploy>${project.build.directory}/gwt-deploy</deploy>
271 <!-- Compile report is not typically needed either, saves hunreds
272 of mb disk -->
273 <compileReport>false</compileReport>
274 <noServer>true</noServer>
275 <!-- Remove draftCompile when project is ready -->
276 <draftCompile>false</draftCompile>
277 <style>OBF</style>
278 <runTarget>http://localhost:8080/</runTarget>
279 </configuration>
280 <executions>
281 <execution>
282 <configuration>
283 <!-- if you don't specify any modules, the plugin will find
284 them -->
285 <!-- <modules> <module>com.vaadin.demo.mobilemail.gwt.ColorPickerWidgetSet</module>
286 </modules> -->
287 </configuration>
288 <goals>
289 <goal>clean</goal>
290 <goal>resources</goal>
291 <goal>update-theme</goal>
292 <goal>update-widgetset</goal>
293 <goal>compile-theme</goal>
294 <goal>compile</goal>
295 </goals>
296 </execution>
297 </executions>
298 </plugin>
299 <plugin>
300 <groupId>org.eclipse.jetty</groupId>
301 <artifactId>jetty-maven-plugin</artifactId>
302 <version>9.4.15.v20190215</version>
303 <!--
304 NOTE:
305 9.4.0.RC1 requires jdk 1.8, formerly we've been using version 9.1.3.v20140225 which was
306 the last version compatible to java 7, but this was causing other problems related to asm
307 which could not be easily solved.
308 -->
309 <configuration>
310 <useTestScope>true</useTestScope>
311 <scanIntervalSeconds>2</scanIntervalSeconds>
312 <systemProperties>
313 <force>true</force>
314 <systemProperty>
315 <name>cdm.datasource</name>
316 <value>h2_cdmTest</value>
317 </systemProperty>
318 <systemProperty>
319 <name>hibernate.hbm2ddl.auto</name>
320 <value>create-drop</value>
321 </systemProperty>
322 <systemProperty>
323 <!--
324 The lucene index should be placed into the target folder,
325 so user.home needs to be set to this folder. user.home needs to be overridden
326 since it already exists, thus the force option is turned on above
327 -->
328 <name>user.home</name>
329 <value>${basedir}/target/</value>
330 </systemProperty>
331 <systemProperty>
332 <!--
333 datasources.xml is prepared by <plugins><resources>..</resources> above
334 -->
335 <name>cdm.beanDefinitionFile</name>
336 <value>${project.build.directory}/test-classes/datasources.xml</value>
337 </systemProperty>
338 </systemProperties>
339 </configuration>
340 <dependencies>
341 <dependency>
342 <groupId>org.slf4j</groupId>
343 <artifactId>slf4j-log4j12</artifactId>
344 <version>1.6.4</version>
345 </dependency>
346 </dependencies>
347 </plugin>
348 <plugin>
349 <groupId>org.apache.maven.plugins</groupId>
350 <artifactId>maven-failsafe-plugin</artifactId>
351 <version>2.17</version>
352 <configuration>
353 <!-- Remove the skipTests line below to run TestBench tests -->
354 <!-- <skipTests>true</skipTests> -->
355 </configuration>
356 <executions>
357 <execution>
358 <goals>
359 <goal>integration-test</goal>
360 <goal>verify</goal>
361 </goals>
362 </execution>
363 </executions>
364 </plugin>
365 <!-- Browser Driver Downloader -->
366 <plugin>
367 <groupId>com.lazerycode.selenium</groupId>
368 <artifactId>driver-binary-downloader-maven-plugin</artifactId>
369 <version>1.0.14</version>
370 <!-- has a bug -->
371 <configuration>
372 <rootStandaloneServerDirectory>selenium/bin</rootStandaloneServerDirectory>
373 <downloadedZipFileDirectory>selenium/zip</downloadedZipFileDirectory>
374 </configuration>
375 <executions>
376 <execution>
377 <goals>
378 <goal>selenium</goal>
379 </goals>
380 </execution>
381 </executions>
382 </plugin>
383 <plugin>
384 <groupId>external.atlassian.jgitflow</groupId>
385 <artifactId>jgitflow-maven-plugin</artifactId>
386 <version>1.0-m6</version>
387 <configuration>
388 <pushHotfixes>true</pushHotfixes>
389 <pushReleases>true</pushReleases>
390 <enableSshAgent>true</enableSshAgent>
391 <allowSnapshots>true</allowSnapshots>
392 <allowUntracked>true</allowUntracked>
393 </configuration>
394 <dependencies>
395 <!-- upgrading dependency jsch.agent.version of jgit-flow plugin
396 to 0.1.53 in order have ssl key exchange algorithms compatible with openssh
397 6.7 -->
398 <dependency>
399 <groupId>com.jcraft</groupId>
400 <artifactId>jsch</artifactId>
401 <version>0.1.53</version>
402 </dependency>
403 </dependencies>
404 </plugin>
405 </plugins>
406 <extensions>
407 <extension>
408 <groupId>org.apache.maven.wagon</groupId>
409 <artifactId>wagon-scm</artifactId>
410 <version>1.0-beta-6</version>
411 </extension>
412 <extension>
413 <groupId>org.apache.maven.wagon</groupId>
414 <artifactId>wagon-ssh</artifactId>
415 <version>1.0-beta-6</version>
416 </extension>
417 <extension>
418 <groupId>org.apache.maven.wagon</groupId>
419 <artifactId>wagon-ssh-external</artifactId>
420 <version>1.0-beta-6</version>
421 </extension>
422 <extension>
423 <groupId>org.apache.maven.scm</groupId>
424 <artifactId>maven-scm-manager-plexus</artifactId>
425 <version>1.0</version>
426 </extension>
427 <extension>
428 <groupId>org.apache.maven.scm</groupId>
429 <artifactId>maven-scm-provider-svnexe</artifactId>
430 <version>1.0</version>
431 </extension>
432 <!-- WebDAV plugin to upload snapshots -->
433 <extension>
434 <groupId>org.apache.maven.wagon</groupId>
435 <artifactId>wagon-webdav</artifactId>
436 <version>1.0-beta-2</version>
437 </extension>
438 </extensions>
439 <pluginManagement>
440 <plugins>
441 <plugin>
442 <artifactId>maven-eclipse-plugin</artifactId>
443 <configuration>
444 <wtpversion>2.0</wtpversion>
445 <additionalProjectnatures>
446 <projectnature>com.vaadin.integration.eclipse.widgetsetNature</projectnature>
447 </additionalProjectnatures>
448 <additionalBuildcommands>
449 <buildcommand>com.vaadin.integration.eclipse.widgetsetBuilder</buildcommand>
450 <buildcommand>com.vaadin.integration.eclipse.addonStylesBuilder</buildcommand>
451 </additionalBuildcommands>
452 </configuration>
453 </plugin>
454 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
455 <plugin>
456 <groupId>org.eclipse.m2e</groupId>
457 <artifactId>lifecycle-mapping</artifactId>
458 <version>1.0.0</version>
459 <configuration>
460 <lifecycleMappingMetadata>
461 <pluginExecutions>
462 <pluginExecution>
463 <pluginExecutionFilter>
464 <groupId>com.lazerycode.selenium</groupId>
465 <artifactId>
466 driver-binary-downloader-maven-plugin
467 </artifactId>
468 <versionRange>[1.0.14,)</versionRange>
469 <goals>
470 <goal>selenium</goal>
471 </goals>
472 </pluginExecutionFilter>
473 <action>
474 <ignore />
475 </action>
476 </pluginExecution>
477 </pluginExecutions>
478 </lifecycleMappingMetadata>
479 </configuration>
480 </plugin>
481 </plugins>
482 </pluginManagement>
483 </build>
484 <dependencies>
485 <!-- ============ Vaadin ============ -->
486 <dependency>
487 <groupId>com.vaadin</groupId>
488 <artifactId>vaadin-spring</artifactId>
489 <version>${vaadin-spring.version}</version>
490 </dependency>
491 <dependency>
492 <groupId>org.vaadin.spring.addons</groupId>
493 <artifactId>vaadin-spring-addon-eventbus</artifactId>
494 <version>${vaadin-spring-addon-eventbus.version}</version>
495 </dependency>
496 <dependency>
497 <groupId>com.vaadin</groupId>
498 <artifactId>vaadin-server</artifactId>
499 </dependency>
500 <dependency>
501 <groupId>com.vaadin</groupId>
502 <artifactId>vaadin-client-compiled</artifactId>
503 </dependency>
504 <!-- Needed when using the widgetset optimizer (custom ConnectorBundleLoaderFactory).
505 For widgetset compilation, vaadin-client-compiler is automatically added
506 on the compilation classpath by vaadin-maven-plugin so normally there is
507 no need for an explicit dependency. -->
508 <!-- <dependency> <groupId>com.vaadin</groupId> <artifactId>vaadin-client-compiler</artifactId>
509 <version>${vaadin.version}</version> <scope>provided</scope> </dependency> -->
510 <dependency>
511 <groupId>com.vaadin</groupId>
512 <artifactId>vaadin-client</artifactId>
513 <scope>test</scope>
514 <exclusions>
515 <exclusion>
516 <groupId>javax.validation</groupId>
517 <artifactId>validation-api</artifactId>
518 </exclusion>
519 </exclusions>
520 </dependency>
521 <!-- disabling push for the moment because it does not work with run-jetty-run
522 due to the fact that the latest (even nightly) version of run-jetty-run uses
523 9.0.0 M3 which is incompatible with atmoshpere. this does work with the jetty
524 included in this pom which is 9.2.5.xx, implying that enabling the dependency
525 and running the web app via 'mvn jetty:run' works fine. -->
526 <!-- <dependency> -->
527 <!-- <groupId>com.vaadin</groupId> -->
528 <!-- <artifactId>vaadin-push</artifactId> -->
529 <!-- <version>${vaadin.version}</version> -->
530 <!-- </dependency> -->
531 <dependency>
532 <groupId>com.vaadin</groupId>
533 <artifactId>vaadin-themes</artifactId>
534 </dependency>
535 <!-- vaadin addons / extensions -->
536 <dependency>
537 <groupId>org.vaadin.addons</groupId>
538 <artifactId>contextmenu</artifactId>
539 <version>4.5</version>
540 </dependency>
541 <dependency>
542 <groupId>org.vaadin.teemu</groupId>
543 <artifactId>switch</artifactId>
544 <version>2.0.4-SNAPSHOT</version>
545 </dependency>
546 <dependency>
547 <groupId>org.vaadin</groupId>
548 <artifactId>viritin</artifactId>
549 <version>1.61</version>
550 </dependency>
551 <dependency>
552 <groupId>org.vaadin.addon</groupId>
553 <artifactId>v-leaflet</artifactId>
554 <version>1.0.3</version>
555 </dependency>
556 <dependency>
557 <groupId>org.vaadin.addons.lazyquerycontainer</groupId>
558 <artifactId>vaadin-lazyquerycontainer</artifactId>
559 <version>7.6.1.3</version>
560 </dependency>
561 <dependency>
562 <groupId>com.flowingcode.vaadin.addons</groupId>
563 <artifactId>error-window-vaadin</artifactId>
564 <version>1.0.0</version>
565 </dependency>
566 <!--
567 <dependency>
568 <groupId>org.vaadin.spring.extensions</groupId>
569 <artifactId>vaadin-spring-ext-test</artifactId>
570 <version>0.0.8-SNAPSHOT</version>
571 <scope>test</scope>
572 </dependency>
573 -->
574 <!-- <dependency>
575 only in the edit repo
576 <groupId>org.vaadin.addons</groupId>
577 <artifactId>lazyloadwrapper</artifactId>
578 <version>0.1-alpha</version>
579 </dependency> -->
580 <!-- ============ cdmlib ============ -->
581 <dependency>
582 <groupId>eu.etaxonomy</groupId>
583 <artifactId>cdmlib-remote</artifactId>
584 <scope>compile</scope>
585 </dependency>
586 <dependency>
587 <groupId>eu.etaxonomy</groupId>
588 <artifactId>cdmlib-cache</artifactId>
589 <version>${cdmlib.version}</version>
590 </dependency>
591 <dependency>
592 <groupId>eu.etaxonomy</groupId>
593 <artifactId>cdmlib-test</artifactId>
594 <scope>test</scope>
595 </dependency>
596 <dependency>
597 <groupId>eu.etaxonomy</groupId>
598 <artifactId>cdmlib-db</artifactId>
599 <version>${cdmlib.version}</version>
600 <scope>test</scope>
601 </dependency>
602 <!-- ============ Other ============ -->
603 <!--
604 to override version number coming with vaadin client
605 version is managed in cdmlib-parent
606 -->
607 <dependency>
608 <groupId>javax.validation</groupId>
609 <artifactId>validation-api</artifactId>
610 </dependency>
611 <dependency>
612 <groupId>org.springmodules</groupId>
613 <artifactId>spring-modules-cache</artifactId>
614 <version>0.7</version>
615 <exclusions>
616 <exclusion>
617 <groupId>org.springframework</groupId>
618 <artifactId>spring</artifactId>
619 </exclusion>
620 <exclusion>
621 <groupId>org.springframework</groupId>
622 <artifactId>spring-mock</artifactId>
623 </exclusion>
624 </exclusions>
625 <scope>test</scope>
626 </dependency>
627 <dependency>
628 <groupId>org.springframework</groupId>
629 <artifactId>spring-test</artifactId>
630 <scope>test</scope>
631 </dependency>
632 <dependency>
633 <groupId>org.json</groupId>
634 <artifactId>json</artifactId>
635 </dependency>
636 <dependency>
637 <groupId>javax.servlet</groupId>
638 <artifactId>javax.servlet-api</artifactId>
639 <scope>provided</scope>
640 </dependency>
641 <!-- ========== testing ======== -->
642 <dependency>
643 <groupId>com.codeborne</groupId>
644 <artifactId>selenide</artifactId>
645 <version>4.7.1</version>
646 <scope>test</scope>
647 </dependency>
648 <dependency>
649 <groupId>org.springframework.boot</groupId>
650 <artifactId>spring-boot</artifactId>
651 </dependency>
652 <dependency>
653 <groupId>org.springframework.boot</groupId>
654 <artifactId>spring-boot-starter-jetty</artifactId>
655 </dependency>
656 <dependency>
657 <groupId>org.springframework</groupId>
658 <artifactId>spring-beans</artifactId>
659 </dependency>
660 </dependencies>
661 </project>