Corrected some things.
[canary-depot.git] / pom.xml
blob206d3d80e3eeb4c4dc565b18ac392f90b905ff00
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project
3   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
4   xmlns="http://maven.apache.org/POM/4.0.0"
5   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
6   <modelVersion>4.0.0</modelVersion>
7   <groupId>cc.cinnamon.canary</groupId>
8   <artifactId>canary-depot</artifactId>
9   <version>0.0.1-SNAPSHOT</version>
10   <packaging>war</packaging>
12   <!-- Basic information about the project -->
13   <name>Canary Depot</name>
14   <inceptionYear>2017</inceptionYear>
15   <description>A project management webapp written with Spring</description>
16   <url>https://bitbucket.org/ccinnamon/canary</url>
18   <properties>
19     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
20     <maven.compiler.source>1.8</maven.compiler.source>
21     <maven.compiler.target>1.8</maven.compiler.target>
22   </properties>
24   <developers>
25     <developer>
26       <id>lead</id>
27       <name>cinnamon</name>
28       <email>cinnamon250@outlook.com</email>
29       <timezone>Europe/Lisbon</timezone>
30     </developer>
31   </developers>
33   <licenses>
34     <license>
35       <name>GNU Affero General Public License version 3.0</name>
36       <url>https://www.gnu.org/licenses/agpl-3.0.md</url>
37       <distribution>repo</distribution>
38       <comments>Code license</comments>
39     </license>
40     <license>
41       <name>Creative Commons Attribution-ShareAlike 4.0 International</name>
42       <url>https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt</url>
43       <distribution>repo</distribution>
44       <comments>Graphics, Text and Multimedia License</comments>
45     </license>
46   </licenses>
48   <scm>
49     <connection>scm:git:https://ccinnamon@bitbucket.org/ccinnamon/canary.git</connection>
50     <developerConnection>scm:git:https://ccinnamon@bitbucket.org/ccinnamon/canary.git</developerConnection>
51     <url>https://bitbucket.org/ccinnamon/canary</url>
52   </scm>
54   <issueManagement>
55     <system>Bitbucket Issues</system>
56     <url>https://bitbucket.org/ccinnamon/canary/issues</url>
57   </issueManagement>
59   <ciManagement>
60     <system>Circle CI</system>
61     <url>https://circleci.com/bb/ccinnamon/canary</url>
62   </ciManagement>
65   <!-- Add jcenter repository -->
66   <repositories>
67     <repository>
68       <id>central</id>
69       <name>bintray</name>
70       <url>http://jcenter.bintray.com</url>
71     </repository>
72   </repositories>
73   <pluginRepositories>
74     <pluginRepository>
75       <id>central</id>
76       <name>bintray-plugins</name>
77       <url>http://jcenter.bintray.com</url>
78     </pluginRepository>
79   </pluginRepositories>
81   <dependencies>
82     <dependency>
83       <groupId>org.jetbrains.kotlin</groupId>
84       <artifactId>kotlin-stdlib</artifactId>
85       <version>1.0.6</version>
86     </dependency>
88     <!-- Java 8 extras -->
89     <dependency>
90       <groupId>org.joda</groupId>
91       <artifactId>joda-money</artifactId>
92       <version>0.12</version>
93       <scope>compile</scope>
94     </dependency>
95     <dependency>
96       <groupId>tec.units</groupId>
97       <artifactId>unit-ri</artifactId>
98       <version>1.0.1</version>
99     </dependency>
102     <!-- Jackson -->
103     <dependency>
104       <groupId>org.zalando</groupId>
105       <artifactId>jackson-datatype-money</artifactId>
106       <version>0.11.0</version>
107       <scope>compile</scope>
108     </dependency>
109     <dependency>
110       <groupId>com.fasterxml.jackson.core</groupId>
111       <artifactId>jackson-databind</artifactId>
112       <version>2.8.6</version>
113       <scope>compile</scope>
114     </dependency>
115     <dependency>
116       <groupId>com.fasterxml.jackson.dataformat</groupId>
117       <artifactId>jackson-dataformat-xml</artifactId>
118       <version>2.8.6</version>
119       <scope>compile</scope>
120     </dependency>
121     <dependency>
122       <groupId>com.fasterxml.jackson.dataformat</groupId>
123       <artifactId>jackson-dataformat-csv</artifactId>
124       <version>2.8.6</version>
125       <scope>compile</scope>
126     </dependency>
127     <dependency>
128       <groupId>com.fasterxml.jackson.dataformat</groupId>
129       <artifactId>jackson-dataformat-yaml</artifactId>
130       <version>2.8.6</version>
131       <scope>compile</scope>
132     </dependency>
133     <dependency>
134       <groupId>com.fasterxml.jackson.dataformat</groupId>
135       <artifactId>jackson-dataformat-properties</artifactId>
136       <version>2.8.6</version>
137       <scope>compile</scope>
138     </dependency>
141     <!-- Jodd -->
142     <dependency>
143       <groupId>org.jodd</groupId>
144       <artifactId>jodd-core</artifactId>
145       <version>3.8.1</version>
146     </dependency>
147     <dependency>
148       <groupId>org.jodd</groupId>
149       <artifactId>jodd-bean</artifactId>
150       <version>3.8.1</version>
151     </dependency>
152     <dependency>
153       <groupId>org.jodd</groupId>
154       <artifactId>jodd-lagarto</artifactId>
155       <version>3.8.1</version>
156     </dependency>
157     <dependency>
158       <groupId>org.jodd</groupId>
159       <artifactId>jodd-http</artifactId>
160       <version>3.8.1</version>
161     </dependency>
162     <dependency>
163       <groupId>org.jodd</groupId>
164       <artifactId>jodd-servlet</artifactId>
165       <version>3.8.1</version>
166     </dependency>
167     <dependency>
168       <groupId>org.jodd</groupId>
169       <artifactId>jodd-mail</artifactId>
170       <version>3.8.1</version>
171     </dependency>
174     <!-- Data formats support -->
175     <dependency>
176       <groupId>org.apache.poi</groupId>
177       <artifactId>poi</artifactId>
178       <version>3.15</version>
179     </dependency>
180     <dependency>
181       <groupId>org.apache.poi</groupId>
182       <artifactId>poi-ooxml</artifactId>
183       <version>3.15</version>
184     </dependency>
187     <!-- Web stuff -->
188     <dependency>
189       <groupId>commons-fileupload</groupId>
190       <artifactId>commons-fileupload</artifactId>
191       <version>1.3.2</version>
192       <scope>compile</scope>
193     </dependency>
196     <!-- Spring framework -->
197     <dependency>
198       <groupId>org.springframework</groupId>
199       <artifactId>spring-core</artifactId>
200       <version>4.3.6.RELEASE</version>
201       <scope>compile</scope>
202     </dependency>
203     <dependency>
204       <groupId>org.springframework</groupId>
205       <artifactId>spring-beans</artifactId>
206       <version>4.3.6.RELEASE</version>
207       <scope>compile</scope>
208     </dependency>
209     <dependency>
210       <groupId>org.springframework</groupId>
211       <artifactId>spring-web</artifactId>
212       <version>4.3.6.RELEASE</version>
213       <scope>compile</scope>
214     </dependency>
215     <dependency>
216       <groupId>org.springframework</groupId>
217       <artifactId>spring-webmvc</artifactId>
218       <version>4.3.6.RELEASE</version>
219       <scope>compile</scope>
220     </dependency>
221     <dependency>
222       <groupId>org.springframework</groupId>
223       <artifactId>spring-context-support</artifactId>
224       <version>4.3.6.RELEASE</version>
225       <scope>compile</scope>
226     </dependency>
227     <dependency>
228       <groupId>org.springframework</groupId>
229       <artifactId>spring-tx</artifactId>
230       <version>4.3.6.RELEASE</version>
231       <scope>compile</scope>
232     </dependency>
233     <dependency>
234       <groupId>org.springframework</groupId>
235       <artifactId>spring-context</artifactId>
236       <version>4.3.6.RELEASE</version>
237       <scope>compile</scope>
238     </dependency>
239     <dependency>
240       <groupId>org.springframework</groupId>
241       <artifactId>spring-jdbc</artifactId>
242       <version>4.3.6.RELEASE</version>
243       <scope>compile</scope>
244     </dependency>
245     <dependency>
246       <groupId>org.springframework.data</groupId>
247       <artifactId>spring-data-commons</artifactId>
248       <version>1.13.0.RELEASE</version>
249       <scope>compile</scope>
250     </dependency>
251     <dependency>
252       <groupId>io.springfox</groupId>
253       <artifactId>springfox-swagger2</artifactId>
254       <version>2.6.1</version>
255       <scope>compile</scope>
256     </dependency>
259     <!-- Utilities -->
260     <dependency>
261       <groupId>com.google.guava</groupId>
262       <artifactId>guava</artifactId>
263       <version>21.0</version>
264       <scope>compile</scope>
265     </dependency>
268     <!-- Bean Validation -->
269     <dependency>
270       <groupId>javax.validation</groupId>
271       <artifactId>validation-api</artifactId>
272       <version>1.1.0.Final</version>
273       <scope>compile</scope>
274     </dependency>
275     <dependency>
276       <groupId>org.hibernate</groupId>
277       <artifactId>hibernate-validator</artifactId>
278       <version>5.4.0.CR1</version>
279     </dependency>
282     <!-- Database -->
283     <dependency>
284       <groupId>com.zaxxer</groupId>
285       <artifactId>HikariCP</artifactId>
286       <version>2.5.1</version>
287       <scope>compile</scope>
288     </dependency>
289     <dependency>
290       <groupId>org.flywaydb</groupId>
291       <artifactId>flyway-core</artifactId>
292       <version>4.0.3</version>
293       <scope>compile</scope>
294     </dependency>
295     <dependency>
296       <groupId>org.postgresql</groupId>
297       <artifactId>postgresql</artifactId>
298       <version>9.4.1212</version>
299       <scope>compile</scope>
300     </dependency>
301     <dependency>
302       <groupId>org.jooq</groupId>
303       <artifactId>jooq</artifactId>
304       <version>3.9.1</version>
305       <scope>compile</scope>
306     </dependency>
309     <!-- Logging -->
310     <dependency>
311       <groupId>org.logback-extensions</groupId>
312       <artifactId>logback-ext-spring</artifactId>
313       <version>0.1.4</version>
314       <scope>compile</scope>
315     </dependency>
316     <dependency>
317       <groupId>org.slf4j</groupId>
318       <artifactId>slf4j-api</artifactId>
319       <version>1.7.22</version>
320       <scope>compile</scope>
321     </dependency>
322     <dependency>
323       <groupId>org.slf4j</groupId>
324       <artifactId>jcl-over-slf4j</artifactId>
325       <version>1.7.22</version>
326       <scope>compile</scope>
327     </dependency>
328     <dependency>
329       <groupId>org.slf4j</groupId>
330       <artifactId>log4j-over-slf4j</artifactId>
331       <version>1.7.22</version>
332       <scope>compile</scope>
333     </dependency>
336     <!-- Bouncy Castle -->
337     <dependency>
338       <groupId>org.bouncycastle</groupId>
339       <artifactId>bcprov-jdk15on</artifactId>
340       <version>1.56</version>
341       <scope>compile</scope>
342     </dependency>
343     <dependency>
344       <groupId>org.bouncycastle</groupId>
345       <artifactId>bcpkix-jdk15on</artifactId>
346       <version>1.56</version>
347       <scope>compile</scope>
348     </dependency>
349     <dependency>
350       <groupId>org.bouncycastle</groupId>
351       <artifactId>bcmail-jdk15on</artifactId>
352       <version>1.56</version>
353       <scope>compile</scope>
354     </dependency>
355     <dependency>
356       <groupId>org.bouncycastle</groupId>
357       <artifactId>bcpg-jdk15on</artifactId>
358       <version>1.56</version>
359       <scope>compile</scope>
360     </dependency>
363     <!-- Testing -->
364     <dependency>
365       <groupId>io.github.j8spec</groupId>
366       <artifactId>j8spec</artifactId>
367       <version>3.0.0</version>
368       <scope>test</scope>
369     </dependency>
370     <dependency>
371       <groupId>junit</groupId>
372       <artifactId>junit</artifactId>
373       <version>4.12</version>
374       <scope>test</scope>
375     </dependency>
376   </dependencies>
380   <build>
381     <sourceDirectory>src/main/kotlin</sourceDirectory>
382     <testSourceDirectory>src/test/kotlin</testSourceDirectory>
383     <plugins>
385       <plugin>
386         <groupId>org.eluder.coveralls</groupId>
387         <artifactId>coveralls-maven-plugin</artifactId>
388         <version>4.3.0</version>
389         <configuration>
390           <repoToken>aX2mCxzo9hbWqLlHC7qGWjKh3Fstj2Y0vDCEJ</repoToken>
391         </configuration>
392       </plugin>
394       <plugin>
395         <groupId>org.flywaydb</groupId>
396         <artifactId>flyway-maven-plugin</artifactId>
397         <version>4.0.3</version>
398         <configuration>
399           <url>${dataSource.url}</url>
400           <driver>${datasource.classname}</driver>
401           <user>${dataSource.username}</user>
402           <password>${dataSource.password}</password>
403           <cleanDisabled>true</cleanDisabled>
404           <baselineOnMigrate>true</baselineOnMigrate>
405         </configuration>
406         <dependencies>
407           <dependency>
408             <groupId>org.postgresql</groupId>
409             <artifactId>postgresql</artifactId>
410             <version>9.4.1212</version>
411           </dependency>
412         </dependencies>
413       </plugin>
415       <plugin>
416         <groupId>org.jooq</groupId>
417         <artifactId>jooq-codegen-maven</artifactId>
418         <version>3.9.1</version>
419         <configuration>
420           <jdbc>
421             <driver>${datasource.classname}</driver>
422             <url>${dataSource.url}</url>
423             <user>${dataSource.username}</user>
424             <password>${dataSource.password}</password>
425           </jdbc>
426           <generator>
427             <database>
428               <inputSchema>public</inputSchema>
429               <name>org.jooq.util.postgres.PostgresDatabase</name>
430               <includeTables>true</includeTables>
431               <includeRoutines>false</includeRoutines>
432               <includePackages>true</includePackages>
433               <includeUDTs>true</includeUDTs>
434               <includeSequences>false</includeSequences>
435               <includePrimaryKeys>true</includePrimaryKeys>
436               <includeUniqueKeys>true</includeUniqueKeys>
437               <includeForeignKeys>true</includeForeignKeys>
438               <schemaVersionProvider>SELECT :schema_name || '_' || MAX("version") FROM "schema_version"</schemaVersionProvider>
439             </database>
440             <generate>
441               <relations>true</relations>
442               <deprecated>false</deprecated>
443               <records>false</records>
444               <interfaces>true</interfaces>
445               <daos>false</daos>
446               <generatedAnnotation>false</generatedAnnotation>
447               <pojos>true</pojos>
448               <pojosToString>true</pojosToString>
449               <pojosEqualsAndHashCode>true</pojosEqualsAndHashCode>
450               <jpaAnnotations>false</jpaAnnotations>
451               <validationAnnotations>true</validationAnnotations>
452               <springAnnotations>true</springAnnotations>
453               <globalObjectReferences>false</globalObjectReferences>
454             </generate>
455           </generator>
456         </configuration>
457         <executions>
459           <execution>
460             <id>geographic</id>
461             <goals>
462               <goal>generate</goal>
463             </goals>
464             <phase>none</phase>
465             <configuration>
466               <generator>
467                 <database>
468                   <includes>point|point3d</includes>
469                 </database>
470                 <generate>
471                   <records>true</records>
472                 </generate>
473                 <target>
474                   <packageName>cc.cinnamon.canary.geographic.model</packageName>
475                 </target>
476               </generator>
477             </configuration>
478           </execution>
480           <execution>
481             <id>users</id>
482             <goals>
483               <goal>generate</goal>
484             </goals>
485             <phase>none</phase>
486             <configuration>
487               <generator>
488                 <database>
489                   <includes>users|roles|permissions|users_roles|roles_permissions</includes>
490                 </database>
491                 <generate>
492                   <records>false</records>
493                 </generate>
494                 <target>
495                   <packageName>cc.cinnamon.canary.users.model</packageName>
496                 </target>
497               </generator>
498             </configuration>
499           </execution>
501           <execution>
502             <id>project</id>
503             <goals>
504               <goal>generate</goal>
505             </goals>
506             <phase>none</phase>
507             <configuration>
508               <generator>
509                 <database>
510                   <includes>project|license</includes>
511                 </database>
512                 <generate>
513                   <records>false</records>
514                 </generate>
515                 <target>
516                   <packageName>cc.cinnamon.canary.projects.model</packageName>
517                 </target>
518               </generator>
519             </configuration>
520           </execution>
522         </executions>
523         <dependencies>
524           <dependency>
525             <groupId>org.postgresql</groupId>
526             <artifactId>postgresql</artifactId>
527             <version>9.4.1212</version>
528           </dependency>
529         </dependencies>
530       </plugin>
531       <plugin>
532         <groupId>org.apache.maven.plugins</groupId>
533         <artifactId>maven-javadoc-plugin</artifactId>
534         <version>2.10.4</version>
535         <executions>
536           <execution>
537             <id>javadoc-jar</id>
538             <phase>package</phase>
539             <goals>
540               <goal>jar</goal>
541             </goals>
542           </execution>
543         </executions>
544       </plugin>
545       <plugin>
546         <groupId>org.apache.maven.plugins</groupId>
547         <artifactId>maven-war-plugin</artifactId>
548         <version>3.0.0</version>
549         <configuration>
550           <archive>
551             <manifest>
552               <addClasspath>true</addClasspath>
553             </manifest>
554           </archive>
555           <includeEmptyDirectories>true</includeEmptyDirectories>
556           <archiveClasses>true</archiveClasses>
557         </configuration>
558       </plugin>
559       <plugin>
560         <groupId>org.jetbrains.kotlin</groupId>
561         <artifactId>kotlin-maven-plugin</artifactId>
562         <version>1.0.6</version>
563         <executions>
564           <execution>
565             <id>compile</id>
566             <phase>compile</phase>
567             <goals>
568               <goal>compile</goal>
569             </goals>
570           </execution>
571         </executions>
572       </plugin>
573     </plugins>
574   </build>
575   <reporting>
576     <plugins>
577       <plugin>
578         <groupId>org.apache.maven.plugins</groupId>
579         <artifactId>maven-project-info-reports-plugin</artifactId>
580         <version>2.9</version>
581       </plugin>
582       <plugin>
583         <groupId>org.apache.maven.plugins</groupId>
584         <artifactId>maven-changelog-plugin</artifactId>
585         <version>2.3</version>
586       </plugin>
587       <plugin>
588         <groupId>org.apache.maven.plugins</groupId>
589         <artifactId>maven-javadoc-plugin</artifactId>
590         <version>2.10.4</version>
591       </plugin>
592       <plugin>
593         <groupId>org.apache.maven.plugins</groupId>
594         <artifactId>maven-jdeps-plugin</artifactId>
595         <version>3.0.0</version>
596       </plugin>
597       <plugin>
598         <groupId>org.apache.maven.plugins</groupId>
599         <artifactId>maven-surefire-report-plugin</artifactId>
600         <version>2.19.1</version>
601       </plugin>
602       <plugin>
603         <groupId>org.apache.maven.plugins</groupId>
604         <artifactId>maven-jxr-plugin</artifactId>
605         <version>2.5</version>
606       </plugin>
607     </plugins>
608   </reporting>
609 </project>