aboutsummaryrefslogtreecommitdiff
path: root/pom.xml
diff options
context:
space:
mode:
Diffstat (limited to 'pom.xml')
-rw-r--r--pom.xml315
1 files changed, 209 insertions, 106 deletions
diff --git a/pom.xml b/pom.xml
index 4edfaaa3c..f5eeedffb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,84 +4,86 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.traccar</groupId>
<artifactId>traccar</artifactId>
- <version>3.14-SNAPSHOT</version>
+ <version>4.7-SNAPSHOT</version>
<name>traccar</name>
<url>https://www.traccar.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <jetty.version>9.2.22.v20170606</jetty.version> <!-- Jetty 9.3+ requires Java 8 -->
- <jersey.version>2.25.1</jersey.version>
+ <guice.version>4.2.2</guice.version>
+ <jetty.version>9.4.26.v20200117</jetty.version>
+ <jersey.version>2.30</jersey.version>
+ <jackson.version>2.9.9</jackson.version> <!-- same version as jersey-media-json-jackson dependency -->
+ <protobuf.version>3.11.1</protobuf.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.12</version>
+ <version>4.13</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.17</version>
- </dependency>
- <dependency>
- <groupId>joda-time</groupId>
- <artifactId>joda-time</artifactId>
- <version>2.9.9</version>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ <version>1.13</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.4.196</version>
+ <version>1.4.200</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
- <version>5.1.44</version> <!-- Version 6 required Java 8 -->
+ <version>8.0.18</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
- <version>42.1.4.jre7</version>
+ <version>42.2.9</version>
</dependency>
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
- <version>6.2.1.jre7</version>
- <exclusions>
- <exclusion>
- <groupId>com.microsoft.azure</groupId>
- <artifactId>azure-keyvault</artifactId>
- </exclusion>
- </exclusions>
+ <version>7.4.1.jre8</version>
</dependency>
<dependency>
<groupId>com.zaxxer</groupId>
- <artifactId>HikariCP-java7</artifactId>
- <version>2.4.12</version> <!-- Version 2.6 requires Java 8 -->
+ <artifactId>HikariCP</artifactId>
+ <version>3.4.2</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
- <artifactId>netty</artifactId>
- <version>3.10.6.Final</version>
+ <artifactId>netty-all</artifactId>
+ <version>4.1.44.Final</version>
</dependency>
<dependency>
- <groupId>com.ning</groupId> <!-- org.asynchttpclient starting from version 2.0 and requires Java 8 -->
- <artifactId>async-http-client</artifactId>
- <version>1.9.40</version>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-jdk14</artifactId>
+ <version>1.7.30</version>
</dependency>
<dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-simple</artifactId>
- <version>1.7.25</version>
+ <groupId>com.google.inject</groupId>
+ <artifactId>guice</artifactId>
+ <version>${guice.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.inject.extensions</groupId>
+ <artifactId>guice-assistedinject</artifactId>
+ <version>${guice.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.owasp.encoder</groupId>
+ <artifactId>encoder</artifactId>
+ <version>1.2.2</version>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
- <version>1.0.4</version>
+ <version>1.1.4</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
@@ -117,6 +119,16 @@
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>${jersey.version}</version>
+ <exclusions> <!-- exclude dependencies to match gradle -->
+ <exclusion>
+ <groupId>com.sun.activation</groupId>
+ <artifactId>jakarta.activation</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jakarta.xml.bind</groupId>
+ <artifactId>jakarta.xml.bind-api</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
@@ -124,24 +136,45 @@
<version>${jersey.version}</version>
</dependency>
<dependency>
+ <groupId>org.glassfish.jersey.inject</groupId>
+ <artifactId>jersey-hk2</artifactId>
+ <version>${jersey.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.jaxrs</groupId>
+ <artifactId>jackson-jaxrs-json-provider</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.datatype</groupId>
+ <artifactId>jackson-datatype-jsr353</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-core</artifactId>
- <version>3.5.3</version>
+ <version>3.8.5</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
- <groupId>javax.mail</groupId>
- <artifactId>mail</artifactId>
- <version>1.4.7</version>
+ <groupId>com.sun.mail</groupId>
+ <artifactId>javax.mail</artifactId>
+ <version>1.6.2</version>
</dependency>
<dependency>
<groupId>org.jxls</groupId>
<artifactId>jxls</artifactId>
- <version>2.4.2</version>
+ <version>2.4.7</version>
</dependency>
<dependency>
<groupId>org.jxls</groupId>
<artifactId>jxls-poi</artifactId>
- <version>1.0.13</version>
+ <version>1.0.16</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
@@ -155,55 +188,76 @@
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
- <artifactId>commons-collections4</artifactId> <!-- Required by Velocity -->
- <version>4.1</version>
+ <artifactId>commons-collections4</artifactId>
+ <version>4.4</version>
</dependency>
<dependency>
<groupId>org.mnode.ical4j</groupId>
<artifactId>ical4j</artifactId>
- <version>2.0.4</version>
+ <version>2.0.5</version> <!-- TODO UPGRADE -->
</dependency>
<dependency>
<groupId>com.fizzed</groupId>
<artifactId>ch-smpp</artifactId>
- <version>5.0.9</version>
+ <version>6.0.0-netty4-beta-3</version>
+ </dependency>
+ <dependency>
+ <groupId>net.java.dev.jna</groupId>
+ <artifactId>jna-platform</artifactId>
+ <version>5.5.0</version>
+ </dependency>
+ <dependency>
+ <groupId>com.github.jnr</groupId>
+ <artifactId>jnr-posix</artifactId>
+ <version>3.0.51</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-java</artifactId>
+ <version>${protobuf.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-core</artifactId>
+ <version>2.3.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-impl</artifactId>
+ <version>2.3.2</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.activation</groupId>
+ <artifactId>activation</artifactId>
+ <version>1.1.1</version>
+ </dependency>
+
+ <!-- override dependencies to match gradle -->
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.7.30</version>
</dependency>
</dependencies>
<build>
<finalName>tracker-server</finalName>
<outputDirectory>target/classes</outputDirectory>
- <sourceDirectory>src</sourceDirectory>
- <testSourceDirectory>test</testSourceDirectory>
- <resources>
- <resource>
- <directory>src</directory>
- <excludes>
- <exclude>**/*.java</exclude>
- </excludes>
- </resource>
- </resources>
<plugins>
<plugin>
- <artifactId>maven-checkstyle-plugin</artifactId>
- <version>2.17</version>
- <configuration>
- <configLocation>checkstyle.xml</configLocation>
- </configuration>
- <executions>
- <execution>
- <id>checkstyle</id>
- <phase>validate</phase>
- <goals>
- <goal>check</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
<artifactId>maven-dependency-plugin</artifactId>
- <version>3.0.1</version>
+ <version>3.1.1</version>
<executions>
<execution>
<phase>package</phase>
@@ -219,7 +273,7 @@
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
- <version>3.0.2</version>
+ <version>3.1.1</version>
<configuration>
<archive>
<manifest>
@@ -234,40 +288,28 @@
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
- <version>3.6.2</version>
+ <version>3.8.0</version>
<configuration>
- <source>1.7</source>
- <target>1.7</target>
+ <source>1.8</source>
+ <target>1.8</target>
<compilerArgument>-Xlint:unchecked</compilerArgument>
</configuration>
</plugin>
<plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>3.1.0</version>
- <configuration>
- <descriptorRefs>
- <descriptorRef>jar-with-dependencies</descriptorRef>
- </descriptorRefs>
- <archive>
- <manifest>
- <mainClass>org.traccar.Main</mainClass>
- </manifest>
- </archive>
- </configuration>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <version>1.4.1</version>
<executions>
<execution>
- <id>assemble-all</id>
- <phase>package</phase>
+ <id>enforce</id>
+ <configuration>
+ <rules>
+ <requireUpperBoundDeps />
+ </rules>
+ </configuration>
<goals>
- <goal>single</goal>
+ <goal>enforce</goal>
</goals>
</execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-enforcer-plugin</artifactId>
- <version>1.4.1</version>
- <executions>
<execution>
<id>enforce-bytecode-version</id>
<goals>
@@ -276,10 +318,7 @@
<configuration>
<rules>
<enforceBytecodeVersion>
- <maxJdkVersion>1.7</maxJdkVersion>
- <ignoreClasses>
- <ignoreClass>*JDBC42*</ignoreClass>
- </ignoreClasses>
+ <maxJdkVersion>1.8</maxJdkVersion>
</enforceBytecodeVersion>
</rules>
<fail>true</fail>
@@ -290,34 +329,98 @@
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>extra-enforcer-rules</artifactId>
- <version>1.0-beta-6</version>
+ <version>1.1</version>
</dependency>
</dependencies>
</plugin>
+ <plugin>
+ <groupId>com.github.os72</groupId>
+ <artifactId>protoc-jar-maven-plugin</artifactId>
+ <version>3.8.0</version>
+ <executions>
+ <execution>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <protocArtifact>com.google.protobuf:protoc:${protobuf.version}</protocArtifact>
+ <inputDirectories>
+ <include>src/main/proto</include>
+ </inputDirectories>
+ <outputDirectory>src/main/java</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-site-plugin</artifactId>
+ <version>3.7.1</version>
+ </plugin>
</plugins>
</build>
+
+ <profiles>
+ <profile>
+ <id>jar-with-dependencies</id>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>3.1.1</version>
+ <configuration>
+ <descriptorRefs>
+ <descriptorRef>jar-with-dependencies</descriptorRef>
+ </descriptorRefs>
+ <archive>
+ <manifest>
+ <mainClass>org.traccar.Main</mainClass>
+ </manifest>
+ </archive>
+ </configuration>
+ <executions>
+ <execution>
+ <id>assemble-all</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
<reporting>
<plugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
- <version>2.9</version>
- <configuration>
- <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
- </configuration>
+ <version>3.0.0</version>
</plugin>
<plugin>
<artifactId>maven-jxr-plugin</artifactId>
- <version>2.5</version>
+ <version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>3.0.5</version>
+ <configuration>
+ <excludeFilterFile>gradle/findbugs.xml</excludeFilterFile>
+ </configuration>
</plugin>
<plugin>
<artifactId>maven-pmd-plugin</artifactId>
- <version>3.8</version>
+ <version>3.11.0</version>
+ <reportSets>
+ <reportSet>
+ <reports>
+ <report>pmd</report>
+ </reports>
+ </reportSet>
+ </reportSets>
</plugin>
</plugins>
</reporting>