source: gs3-extensions/iiif-servlet/trunk/src/cantaloupe-pom403.xml

Last change on this file was 38200, checked in by davidb, 8 months ago

Changes and fixes after install on fresh OS

File size: 26.4 KB
Line 
1<project xmlns="http://maven.apache.org/POM/4.0.0"
2 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>edu.illinois.library.cantaloupe</groupId>
6 <artifactId>cantaloupe</artifactId>
7 <packaging>war</packaging>
8 <version>4.0.3</version>
9 <name>Cantaloupe</name>
10 <url>https://medusa-project.github.io/cantaloupe/</url>
11 <inceptionYear>2015</inceptionYear>
12
13 <properties>
14 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
15 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
16 <aws-sdk.version>1.11.291</aws-sdk.version>
17 <jackson.version>2.9.8</jackson.version>
18 <jetty.version>9.4.12.v20180830</jetty.version>
19 <jruby.version>9.1.17.0</jruby.version>
20 <restlet.version>2.3.11</restlet.version>
21 <surefire.version>2.21.0</surefire.version>
22 </properties>
23
24 <developers>
25 <developer>
26 <id>alexd</id>
27 <name>Alex Dolski</name>
28 <email>[email protected]</email>
29 <organization>University of Illinois at Urbana-Champaign Library</organization>
30 <organizationUrl>https://www.library.illinois.edu/</organizationUrl>
31 <roles>
32 <role>founder</role>
33 <role>lead</role>
34 <role>developer</role>
35 <role>debugger</role>
36 <role>reviewer</role>
37 <role>support</role>
38 <role>maintainer</role>
39 </roles>
40 <timezone>-6</timezone>
41 </developer>
42 </developers>
43
44 <scm>
45 <connection>scm:git:git://github.com/medusa-project/cantaloupe</connection>
46 <developerConnection>scm:git:[email protected]:medusa-project/cantaloupe</developerConnection>
47 <tag>HEAD</tag>
48 <url>https://github.com/medusa-project/cantaloupe</url>
49 </scm>
50 <issueManagement>
51 <system>GitHub Issues</system>
52 <url>https://github.com/medusa-project/cantaloupe/issues</url>
53 </issueManagement>
54
55 <dependencies>
56
57 <!-- Begin GSDL Splice -->
58 <dependency>
59 <groupId>org.greenstone</groupId>
60 <artifactId>gsdl3</artifactId>
61 <version>3.11</version>
62 <scope>system</scope>
63 <!--
64 <systemPath>${project.basedir}/src/main/resources/gsdl3.jar</systemPath>
65 -->
66 <systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/gsdl3.jar</systemPath>
67 </dependency>
68
69 <dependency>
70 <groupId>org.greenstone</groupId>
71 <artifactId>gutil</artifactId>
72 <version>3.11</version>
73 <scope>system</scope>
74 <!--
75 <systemPath>${project.basedir}/src/main/resources/gutil.jar</systemPath>
76 -->
77 <systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/gutil.jar</systemPath>
78 </dependency>
79
80 <dependency>
81 <groupId>log4j</groupId>
82 <artifactId>log4j</artifactId>
83 <version>1.2.8</version>
84 </dependency>
85
86 <!-- End GSDL Splice -->
87
88 <!-- Used by RedisCache -->
89 <dependency>
90 <groupId>biz.paluch.redis</groupId>
91 <artifactId>lettuce</artifactId>
92 <version>4.3.3.Final</version>
93 </dependency>
94 <!-- The application logger. -->
95 <dependency>
96 <groupId>ch.qos.logback</groupId>
97 <artifactId>logback-classic</artifactId>
98 <version>1.2.3</version>
99 </dependency>
100 <dependency>
101 <groupId>ch.qos.logback</groupId>
102 <artifactId>logback-core</artifactId>
103 <version>1.2.3</version>
104 </dependency>
105 <!-- Used by S3Source and S3Cache -->
106 <dependency>
107 <groupId>com.amazonaws</groupId>
108 <artifactId>aws-java-sdk-core</artifactId>
109 <version>${aws-sdk.version}</version>
110 </dependency>
111 <dependency>
112 <groupId>com.amazonaws</groupId>
113 <artifactId>aws-java-sdk-s3</artifactId>
114 <version>${aws-sdk.version}</version>
115 </dependency>
116 <!-- In-memory object cache: https://github.com/ben-manes/caffeine-->
117 <dependency>
118 <groupId>com.github.ben-manes.caffeine</groupId>
119 <artifactId>caffeine</artifactId>
120 <version>2.5.6</version>
121 </dependency>
122 <!-- Used in tests to test that System.exit() is called -->
123 <dependency>
124 <groupId>com.github.stefanbirkner</groupId>
125 <artifactId>system-rules</artifactId>
126 <version>1.15.1</version>
127 <scope>test</scope>
128 </dependency>
129 <!-- Used by HeapCache -->
130 <dependency>
131 <groupId>com.google.protobuf</groupId>
132 <artifactId>protobuf-java</artifactId>
133 <version>3.5.1</version>
134 </dependency>
135 <!-- Used by JdbcSourceTest and JdbcCacheTest -->
136 <dependency>
137 <groupId>com.h2database</groupId>
138 <artifactId>h2</artifactId>
139 <version>1.4.196</version>
140 <scope>test</scope>
141 </dependency>
142 <!-- Used by com.mortennobel.imagescaling -->
143 <dependency>
144 <groupId>com.jhlabs</groupId>
145 <artifactId>filters</artifactId>
146 <version>2.0.235</version>
147 </dependency>
148 <!-- Used by AzureStorageSource and AzureStorageCache-->
149 <dependency>
150 <groupId>com.microsoft.azure</groupId>
151 <artifactId>azure-storage</artifactId>
152 <version>5.2.0</version>
153 </dependency>
154 <!-- Provides a JDBC connection pool for JdbcSource and JdbcCache -->
155 <dependency>
156 <groupId>com.zaxxer</groupId>
157 <artifactId>HikariCP</artifactId>
158 <version>2.7.2</version>
159 </dependency>
160 <!-- Manages the application configuration. -->
161 <dependency>
162 <groupId>commons-configuration</groupId>
163 <artifactId>commons-configuration</artifactId>
164 <version>1.10</version>
165 </dependency>
166 <!-- IOUtils is used widely -->
167 <dependency>
168 <groupId>commons-io</groupId>
169 <artifactId>commons-io</artifactId>
170 <version>2.4</version>
171 </dependency>
172 <!-- Used by S3SourceTest and S3CacheTest -->
173 <dependency>
174 <groupId>io.findify</groupId>
175 <artifactId>s3mock_2.12</artifactId>
176 <version>0.2.4</version>
177 <scope>test</scope>
178 </dependency>
179 <!-- Dependency on part of Java EE that's available by default in Java 8
180 but not 9 -->
181 <dependency>
182 <groupId>javax.xml.bind</groupId>
183 <artifactId>jaxb-api</artifactId>
184 <version>2.3.0</version>
185 </dependency>
186 <!-- Enhanced ImageIO TIFF plugin supporting BigTIFF:
187 https://github.com/geosolutions-it/imageio-ext/ -->
188 <dependency>
189 <groupId>it.geosolutions.imageio-ext</groupId>
190 <artifactId>imageio-ext-tiff</artifactId>
191 <version>1.1.19</version>
192 </dependency>
193 <dependency>
194 <groupId>javax.servlet</groupId>
195 <artifactId>javax.servlet-api</artifactId>
196 <version>3.1.0</version>
197 <scope>provided</scope>
198 </dependency>
199 <dependency>
200 <groupId>org.apache.commons</groupId>
201 <artifactId>commons-lang3</artifactId>
202 <version>3.6</version>
203 </dependency>
204 <dependency>
205 <groupId>commons-codec</groupId>
206 <artifactId>commons-codec</artifactId>
207 <version>1.10</version>
208 </dependency>
209 <!-- This is used to fix a CVE-2015-6420 in commons-collections-3.2.1, a
210 transitive dependency -->
211 <dependency>
212 <groupId>commons-collections</groupId>
213 <artifactId>commons-collections</artifactId>
214 <version>3.2.2</version>
215 </dependency>
216 <!-- Provides PDFBox for PdfBoxProcessor. Note that there are also some
217 other dependencies in this POM used only by PDFBox. -->
218 <dependency>
219 <groupId>org.apache.pdfbox</groupId>
220 <artifactId>pdfbox</artifactId>
221 <version>2.0.13</version>
222 </dependency>
223 <!-- Assists PDFBox in decoding JBIG2-encoded images -->
224 <dependency>
225 <groupId>org.apache.pdfbox</groupId>
226 <artifactId>jbig2-imageio</artifactId>
227 <version>3.0.0</version>
228 </dependency>
229 <!-- Unit tests -->
230 <dependency>
231 <groupId>junit</groupId>
232 <artifactId>junit</artifactId>
233 <version>4.12</version>
234 <scope>test</scope>
235 </dependency>
236 <!-- Performance tests -->
237 <dependency>
238 <groupId>org.openjdk.jmh</groupId>
239 <artifactId>jmh-core</artifactId>
240 <version>1.19</version>
241 <scope>test</scope>
242 </dependency>
243 <dependency>
244 <groupId>org.openjdk.jmh</groupId>
245 <artifactId>jmh-generator-annprocess</artifactId>
246 <version>1.19</version>
247 <scope>test</scope>
248 </dependency>
249 <!-- Assists in parsing XMP metadata in RDF/XML -->
250 <dependency>
251 <groupId>org.apache.jena</groupId>
252 <artifactId>jena-core</artifactId>
253 <version>3.4.0</version>
254 </dependency>
255 <dependency>
256 <groupId>org.apache.jena</groupId>
257 <artifactId>jena-arq</artifactId>
258 <version>3.4.0</version>
259 </dependency>
260 <!-- Used for media type detection -->
261 <dependency>
262 <groupId>org.apache.tika</groupId>
263 <artifactId>tika-core</artifactId>
264 <version>1.20</version>
265 </dependency>
266 <!-- Assists PDFBox in decoding certain PDFs -->
267 <dependency>
268 <groupId>org.bouncycastle</groupId>
269 <artifactId>bcprov-jdk15on</artifactId>
270 <version>1.55</version>
271 </dependency>
272 <!-- Supports <if> expressions in logback.xml -->
273 <dependency>
274 <groupId>org.codehaus.janino</groupId>
275 <artifactId>janino</artifactId>
276 <version>2.7.8</version>
277 </dependency>
278 <!-- Provides HTTP/2 support in the Jetty client.
279 N.B.: ALPN support is in a different module. -->
280 <dependency>
281 <groupId>org.eclipse.jetty.http2</groupId>
282 <artifactId>http2-client</artifactId>
283 <version>${jetty.version}</version>
284 </dependency>
285 <dependency>
286 <groupId>org.eclipse.jetty.http2</groupId>
287 <artifactId>http2-http-client-transport</artifactId>
288 <version>${jetty.version}</version>
289 </dependency>
290 <!-- Provides HTTP/2 support in the Jetty server.
291 N.B.: ALPN support is in a different module. -->
292 <dependency>
293 <groupId>org.eclipse.jetty.http2</groupId>
294 <artifactId>http2-server</artifactId>
295 <version>${jetty.version}</version>
296 </dependency>
297 <!-- Enables support for ALPN in Jetty client.
298 N.B.: in Java 8, this requires an alpn-boot JAR on the boot classpath. -->
299 <dependency>
300 <groupId>org.eclipse.jetty</groupId>
301 <artifactId>jetty-alpn-client</artifactId>
302 <version>${jetty.version}</version>
303 </dependency>
304 <!-- Enables support for ALPN in Jetty server.
305 N.B.: in Java 8, this requires an alpn-boot JAR on the boot classpath. -->
306 <dependency>
307 <groupId>org.eclipse.jetty</groupId>
308 <artifactId>jetty-alpn-server</artifactId>
309 <version>${jetty.version}</version>
310 </dependency>
311 <!-- Enables Jetty client to support the ALPN built into Java 9 -->
312 <dependency>
313 <groupId>org.eclipse.jetty</groupId>
314 <artifactId>jetty-alpn-java-client</artifactId>
315 <version>${jetty.version}</version>
316 </dependency>
317 <!-- Enables Jetty server to support the ALPN built into Java 9 -->
318 <dependency>
319 <groupId>org.eclipse.jetty</groupId>
320 <artifactId>jetty-alpn-java-server</artifactId>
321 <version>${jetty.version}</version>
322 </dependency>
323 <!-- Used by HttpSource -->
324 <dependency>
325 <groupId>org.eclipse.jetty</groupId>
326 <artifactId>jetty-http</artifactId>
327 <version>${jetty.version}</version>
328 </dependency>
329 <dependency>
330 <groupId>org.eclipse.jetty</groupId>
331 <artifactId>jetty-io</artifactId>
332 <version>${jetty.version}</version>
333 </dependency>
334 <dependency>
335 <groupId>org.eclipse.jetty</groupId>
336 <artifactId>jetty-client</artifactId>
337 <version>${jetty.version}</version>
338 </dependency>
339 <!-- Provides the standalone servlet container -->
340 <dependency>
341 <groupId>org.eclipse.jetty</groupId>
342 <artifactId>jetty-util</artifactId>
343 <version>${jetty.version}</version>
344 </dependency>
345 <dependency>
346 <groupId>org.eclipse.jetty</groupId>
347 <artifactId>jetty-server</artifactId>
348 <version>${jetty.version}</version>
349 </dependency>
350 <dependency>
351 <groupId>org.eclipse.jetty</groupId>
352 <artifactId>jetty-servlet</artifactId>
353 <version>${jetty.version}</version>
354 </dependency>
355 <dependency>
356 <groupId>org.eclipse.jetty</groupId>
357 <artifactId>jetty-webapp</artifactId>
358 <version>${jetty.version}</version>
359 </dependency>
360 <!-- Enables colorized Logback console output in Windows -->
361 <dependency>
362 <groupId>org.fusesource.jansi</groupId>
363 <artifactId>jansi</artifactId>
364 <version>1.13</version>
365 </dependency>
366 <!-- JRuby is used to execute delegate script methods. -->
367 <dependency>
368 <groupId>org.jruby</groupId>
369 <artifactId>jruby-core</artifactId>
370 <version>${jruby.version}</version>
371 </dependency>
372 <!-- Needed by tests, but not necessary at compile time. -->
373 <dependency>
374 <groupId>org.jruby</groupId>
375 <artifactId>jruby-stdlib</artifactId>
376 <version>${jruby.version}</version>
377 <scope>runtime</scope>
378 </dependency>
379 <!-- Restlet is our REST framework. -->
380 <dependency>
381 <groupId>org.restlet.jee</groupId>
382 <artifactId>org.restlet</artifactId>
383 <version>${restlet.version}</version>
384 </dependency>
385 <!-- Jackson for data serialization -->
386 <dependency>
387 <groupId>com.fasterxml.jackson.core</groupId>
388 <artifactId>jackson-core</artifactId>
389 <version>${jackson.version}</version>
390 </dependency>
391 <dependency>
392 <groupId>com.fasterxml.jackson.core</groupId>
393 <artifactId>jackson-annotations</artifactId>
394 <version>${jackson.version}</version>
395 </dependency>
396 <dependency>
397 <groupId>com.fasterxml.jackson.core</groupId>
398 <artifactId>jackson-databind</artifactId>
399 <version>${jackson.version}</version>
400 </dependency>
401 <!-- Make Jackson aware of JDK8 date/time objects -->
402 <dependency>
403 <groupId>com.fasterxml.jackson.datatype</groupId>
404 <artifactId>jackson-datatype-jsr310</artifactId>
405 <version>${jackson.version}</version>
406 </dependency>
407 <!-- Makes Restlet log to SLF4J -->
408 <dependency>
409 <groupId>org.restlet.jee</groupId>
410 <artifactId>org.restlet.ext.slf4j</artifactId>
411 <version>${restlet.version}</version>
412 </dependency>
413 <!-- Enable usage of the application in a Servlet container -->
414 <dependency>
415 <groupId>org.restlet.jee</groupId>
416 <artifactId>org.restlet.ext.servlet</artifactId>
417 <version>${restlet.version}</version>
418 </dependency>
419 <!-- Provides Velocity for the landing and error page templates -->
420 <dependency>
421 <groupId>org.apache.velocity</groupId>
422 <artifactId>velocity-engine-core</artifactId>
423 <version>2.0</version>
424 </dependency>
425 <!-- Selenium is used to test the control panel, using a headless HtmlUnit
426 browser. -->
427 <dependency>
428 <groupId>org.seleniumhq.selenium</groupId>
429 <artifactId>htmlunit-driver</artifactId>
430 <version>2.21</version>
431 <scope>test</scope>
432 </dependency>
433 <dependency>
434 <groupId>org.seleniumhq.selenium</groupId>
435 <artifactId>selenium-api</artifactId>
436 <version>2.53.0</version>
437 <scope>test</scope>
438 </dependency>
439 <dependency>
440 <groupId>org.seleniumhq.selenium</groupId>
441 <artifactId>selenium-support</artifactId>
442 <version>2.53.0</version>
443 <scope>test</scope>
444 </dependency>
445 <!-- Logging interface used by the application -->
446 <dependency>
447 <groupId>org.slf4j</groupId>
448 <artifactId>slf4j-api</artifactId>
449 <version>1.7.25</version>
450 </dependency>
451 <!-- intercepts jcl log messages from Commons etc. -->
452 <dependency>
453 <groupId>org.slf4j</groupId>
454 <artifactId>jcl-over-slf4j</artifactId>
455 <version>1.7.25</version>
456 </dependency>
457 </dependencies>
458
459 <repositories>
460 <!-- Provides imageio-ext-tiff -->
461 <repository>
462 <id>imageio-ext-repository</id>
463 <name>imageio-ext Repository</name>
464 <url>https://maven.geo-solutions.it/</url>
465 </repository>
466 <!-- Provides Restlet -->
467 <repository>
468 <id>maven-restlet</id>
469 <name>Restlet repository</name>
470 <url>https://maven.restlet.com</url>
471 </repository>
472 </repositories>
473
474 <build>
475 <plugins>
476 <plugin>
477 <groupId>org.apache.maven.plugins</groupId>
478 <artifactId>maven-surefire-plugin</artifactId>
479 <version>${surefire.version}</version>
480 <configuration>
481 <runOrder>random</runOrder>
482 <reuseForks>false</reuseForks>
483 </configuration>
484 </plugin>
485
486 <!-- Find bugs with mvn findbugs:findbugs findbugs:gui -->
487 <plugin>
488 <groupId>org.codehaus.mojo</groupId>
489 <artifactId>findbugs-maven-plugin</artifactId>
490 <version>3.0.1</version>
491 </plugin>
492
493 <plugin>
494 <groupId>org.apache.maven.plugins</groupId>
495 <artifactId>maven-compiler-plugin</artifactId>
496 <version>3.3</version>
497 <configuration>
498 <source>1.8</source>
499 <target>1.8</target>
500 <useIncrementalCompilation>false</useIncrementalCompilation>
501 </configuration>
502 </plugin>
503
504 <!-- About the build: it's easy to build a JAR using the Maven Shade
505 plugin, and it's easy to build a WAR using the Maven WAR plugin. However,
506 this application is packaged as a special WAR that can also be run like a
507 JAR, and there's no all-in-one Maven plugin for that. So, from here, we
508 have to go through a sequence of steps to build the custom WAR. -->
509
510 <!-- The first step is to unpack dependencies (direct and transient)
511 needed in standalone mode into the root, for compatibility with
512 `java -jar` invocation. Note that this plugin is not smart about handling
513 dependencies with the same filename, which mainly is a problem with
514 same-named META-INF/services files from e.g. Jetty, so we will have to
515 work around that in a later step. -->
516 <plugin>
517 <groupId>org.apache.maven.plugins</groupId>
518 <artifactId>maven-dependency-plugin</artifactId>
519 <version>3.0.2</version>
520 <executions>
521 <execution>
522 <id>unpack-dependencies</id>
523 <phase>prepare-package</phase>
524 <goals>
525 <goal>unpack-dependencies</goal>
526 </goals>
527 <configuration>
528 <excludes>**/META-INF/*.DSA, **/META-INF/*.MF,
529 **/META-INF/*.RSA, **/META-INF/*.SF,
530 **/META-INF/*.txt</excludes>
531 <includeGroupIds>
532 commons-configuration,
533 commons-lang,
534 commons-logging,
535 javax.servlet,
536 org.eclipse.jetty,
537 org.greenstone, log4j
538 </includeGroupIds>
539 <!-- GSDL Splice above -->
540 <outputDirectory>
541 ${project.build.directory}/${project.artifactId}-${project.version}
542 </outputDirectory>
543 </configuration>
544 </execution>
545 </executions>
546 </plugin>
547
548 <!-- The previous step copied only dependencies. Now we copy the
549 application classes needed for standalone mode into the root. -->
550 <plugin>
551 <artifactId>maven-antrun-plugin</artifactId>
552 <executions>
553 <execution>
554 <id>copy-standalone-classes-to-root</id>
555 <phase>prepare-package</phase>
556 <goals>
557 <goal>run</goal>
558 </goals>
559 <configuration>
560 <tasks>
561 <copy todir="${project.build.directory}/${project.artifactId}-${project.version}/">
562 <fileset dir="${project.build.directory}/classes/">
563 <include name="edu/illinois/library/cantaloupe/config/*" />
564 <include name="edu/illinois/library/cantaloupe/util/FilesystemWatcher.class" />
565 <include name="edu/illinois/library/cantaloupe/util/FilesystemWatcher$Callback.class" />
566 <include name="edu/illinois/library/cantaloupe/util/SystemUtils.class" />
567 <include name="edu/illinois/library/cantaloupe/Application.class" />
568 <include name="edu/illinois/library/cantaloupe/ApplicationServer.class" />
569 <include name="edu/illinois/library/cantaloupe/StandaloneEntry.class" />
570 </fileset>
571 </copy>
572 </tasks>
573 </configuration>
574 </execution>
575
576 <!-- And also add back a missing Jetty service that didn't get
577 copied in the unpack-dependencies execution. -->
578 <execution>
579 <id>finalize-services</id>
580 <phase>prepare-package</phase>
581 <goals>
582 <goal>run</goal>
583 </goals>
584 <configuration>
585 <tasks>
586 <echo file="${project.build.directory}/${project.artifactId}-${project.version}/META-INF/services/org.eclipse.jetty.http.HttpFieldPreEncoder" append="true">
587 ${line.separator}org.eclipse.jetty.http2.hpack.HpackFieldPreEncoder
588 </echo>
589 </tasks>
590 </configuration>
591 </execution>
592 </executions>
593 </plugin>
594
595 <!-- Create the war file from the stuff we just unpacked. -->
596 <plugin>
597 <groupId>org.apache.maven.plugins</groupId>
598 <artifactId>maven-war-plugin</artifactId>
599 <version>3.2.0</version>
600 <executions>
601 <execution>
602 <id>create-war</id>
603 <phase>package</phase>
604 <goals>
605 <goal>war</goal>
606 </goals>
607 <configuration>
608 <archive>
609 <manifest>
610 <mainClass>edu.illinois.library.cantaloupe.StandaloneEntry</mainClass>
611 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
612 <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
613 </manifest>
614 </archive>
615 </configuration>
616 </execution>
617 </executions>
618 </plugin>
619
620 <!-- Assemble the created war into a release package. -->
621 <plugin>
622 <artifactId>maven-assembly-plugin</artifactId>
623 <version>3.1.0</version>
624 <executions>
625 <execution>
626 <phase>package</phase>
627 <goals>
628 <goal>single</goal>
629 </goals>
630 </execution>
631 </executions>
632 <configuration>
633 <appendAssemblyId>false</appendAssemblyId>
634 <descriptors>
635 <descriptor>${basedir}/build/assembly.xml</descriptor>
636 </descriptors>
637 </configuration>
638 <!-- This plugin depends on a version of plexus-archiver that
639 doesn't work with JDK 9. So, use a version that does.
640 TODO: revisit this -->
641 <dependencies>
642 <dependency>
643 <groupId>org.codehaus.plexus</groupId>
644 <artifactId>plexus-archiver</artifactId>
645 <version>3.5</version>
646 </dependency>
647 </dependencies>
648 </plugin>
649
650 <!-- Enables running with mvn exec:java -->
651 <plugin>
652 <groupId>org.codehaus.mojo</groupId>
653 <artifactId>exec-maven-plugin</artifactId>
654 <version>1.2.1</version>
655 <configuration>
656 <mainClass>edu.illinois.library.cantaloupe.StandaloneEntry</mainClass>
657 </configuration>
658 </plugin>
659
660 </plugins>
661 </build>
662
663 <profiles>
664 <profile>
665 <id>nodeps</id>
666 <activation>
667 <activeByDefault>false</activeByDefault>
668 </activation>
669 <build>
670 <plugins>
671 <plugin>
672 <groupId>org.apache.maven.plugins</groupId>
673 <artifactId>maven-surefire-plugin</artifactId>
674 <version>${surefire.version}</version>
675 <configuration>
676 <runOrder>random</runOrder>
677 <reuseForks>false</reuseForks>
678 <excludes>
679 <exclude>AzureStorage*Test</exclude>
680 <exclude>FfmpegProcessorTest</exclude>
681 <exclude>GraphicsMagickProcessorTest</exclude>
682 <exclude>ImageMagickProcessorTest</exclude>
683 <exclude>KakaduDemoProcessorTest</exclude>
684 <exclude>KakaduNativeProcessorTest</exclude>
685 <exclude>OpenJpegProcessorTest</exclude>
686 <exclude>RedisCacheTest</exclude>
687 </excludes>
688 </configuration>
689 </plugin>
690 </plugins>
691 </build>
692 </profile>
693 <profile>
694 <id>freedeps</id>
695 <activation>
696 <activeByDefault>false</activeByDefault>
697 </activation>
698 <build>
699 <plugins>
700 <plugin>
701 <groupId>org.apache.maven.plugins</groupId>
702 <artifactId>maven-surefire-plugin</artifactId>
703 <version>${surefire.version}</version>
704 <configuration>
705 <runOrder>random</runOrder>
706 <reuseForks>false</reuseForks>
707 <excludes>
708 <exclude>Azure*Test</exclude>
709 <!-- openjpeg is free but there is no package containing opj_decompress in trusty -->
710 <exclude>OpenJpeg*Test</exclude>
711 </excludes>
712 </configuration>
713 </plugin>
714 </plugins>
715 </build>
716 </profile>
717 <profile>
718 <id>benchmark</id>
719 <properties>
720 <skipTests>true</skipTests>
721 <benchmark>edu.illinois</benchmark>
722 </properties>
723 <build>
724 <plugins>
725 <plugin>
726 <groupId>org.apache.maven.plugins</groupId>
727 <artifactId>maven-compiler-plugin</artifactId>
728 <configuration>
729 <testIncludes>
730 <testInclude>**/*</testInclude>
731 </testIncludes>
732 </configuration>
733 </plugin>
734 <plugin>
735 <groupId>org.codehaus.mojo</groupId>
736 <artifactId>exec-maven-plugin</artifactId>
737 <executions>
738 <execution>
739 <id>benchmark</id>
740 <phase>test</phase>
741 <goals>
742 <goal>exec</goal>
743 </goals>
744 <configuration>
745 <classpathScope>test</classpathScope>
746 <executable>java</executable>
747 <arguments>
748 <argument>-classpath</argument>
749 <classpath/>
750 <argument>org.openjdk.jmh.Main</argument>
751 <argument>-rf</argument>
752 <argument>json</argument>
753 <argument>-rff</argument>
754 <argument>target/jmh-result.${benchmark}.json</argument>
755 <argument>${benchmark}</argument>
756 </arguments>
757 </configuration>
758 </execution>
759 </executions>
760 </plugin>
761 </plugins>
762 </build>
763 </profile>
764 </profiles>
765</project>
Note: See TracBrowser for help on using the repository browser.