Project

General

Profile

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