Project

General

Profile

Download (17.3 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"
3
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4
  <modelVersion>4.0.0</modelVersion>
5
  <groupId>eu.etaxonomy</groupId>
6
  <artifactId>cdm-vaadin</artifactId>
7
  <packaging>war</packaging>
8
  <version>4.4.0-SNAPSHOT</version>
9
  <name>Vaadin Web Application</name>
10
  <properties>
11
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
12
    <vaadin.version>7.6.3</vaadin.version>
13
    <vaadin.plugin.version>${vaadin.version}</vaadin.plugin.version>
14
    <cdmlib.version>4.4.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.7</maven.compiler.source>
21
    <maven.compiler.target>1.7</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://wp5.e-taxonomy.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
  
61
  <pluginRepositories>
62
    <pluginRepository>
63
      <id>vaadin-snapshots</id>
64
      <url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
65
      <releases>
66
        <enabled>false</enabled>
67
      </releases>
68
      <snapshots>
69
        <enabled>true</enabled>
70
      </snapshots>
71
    </pluginRepository>
72
  </pluginRepositories>
73

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