Skip to content

Commit 4cf5b37

Browse files
committed
Rework POM to be able to compile and use latest versions of plugins and components,
apply fix from wdtinc/mapbox-vector-tile-java#52 to use JTS 1.18.
1 parent 5d3afda commit 4cf5b37

2 files changed

Lines changed: 154 additions & 75 deletions

File tree

pom.xml

Lines changed: 153 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -36,23 +36,7 @@
3636
<developerConnection>scm:git:ssh://github.com:wdtinc/mapbox-vector-tile-java.git</developerConnection>
3737
<url>https://github.com/wdtinc/mapbox-vector-tile-java</url>
3838
</scm>
39-
40-
<properties>
41-
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
42-
</properties>
43-
44-
<repositories>
45-
<repository>
46-
<id>central</id>
47-
<name>Maven Central</name>
48-
<url>http://repo1.maven.org/maven2/</url>
49-
<releases>
50-
<enabled>true</enabled>
51-
<checksumPolicy>warn</checksumPolicy>
52-
</releases>
53-
</repository>
54-
</repositories>
55-
39+
<!-- Sonatype repository -->
5640
<distributionManagement>
5741
<snapshotRepository>
5842
<id>ossrh</id>
@@ -64,39 +48,95 @@
6448
</repository>
6549
</distributionManagement>
6650

51+
<properties>
52+
<!-- encoding for resource files -->
53+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
54+
</properties>
55+
56+
<dependencies>
57+
<!-- support for annotations -->
58+
<dependency>
59+
<groupId>com.github.spotbugs</groupId>
60+
<artifactId>spotbugs-annotations</artifactId>
61+
<version>4.7.0</version>
62+
<scope>provided</scope>
63+
</dependency>
64+
<dependency>
65+
<groupId>org.eclipse.jdt</groupId>
66+
<artifactId>org.eclipse.jdt.annotation</artifactId>
67+
<version>2.2.600</version>
68+
<scope>provided</scope>
69+
</dependency>
70+
<!-- MVT encoding -->
71+
<dependency>
72+
<groupId>com.google.protobuf</groupId>
73+
<artifactId>protobuf-java</artifactId>
74+
<version>3.20.1</version>
75+
</dependency>
76+
77+
<!-- Geometry model -->
78+
<dependency>
79+
<groupId>org.locationtech.jts</groupId>
80+
<artifactId>jts-core</artifactId>
81+
<version>1.18.2</version>
82+
</dependency>
83+
84+
<!-- Test scope dependencies -->
85+
<dependency>
86+
<groupId>junit</groupId>
87+
<artifactId>junit</artifactId>
88+
<version>4.13.2</version>
89+
<scope>test</scope>
90+
</dependency>
91+
<dependency>
92+
<groupId>org.slf4j</groupId>
93+
<artifactId>slf4j-api</artifactId>
94+
<version>2.0.0-alpha7</version>
95+
</dependency>
96+
<dependency>
97+
<groupId>org.slf4j</groupId>
98+
<artifactId>slf4j-jdk14</artifactId>
99+
<version>2.0.0-alpha7</version>
100+
<scope>test</scope>
101+
</dependency>
102+
</dependencies>
103+
67104
<build>
68105
<plugins>
69106
<plugin>
70107
<groupId>org.apache.maven.plugins</groupId>
71108
<artifactId>maven-compiler-plugin</artifactId>
72-
<version>3.2</version>
109+
<version>3.10.1</version>
73110
<configuration>
74-
<source>1.8</source>
75-
<target>1.8</target>
111+
<source>11</source>
112+
<target>11</target>
113+
<compilerArgument>-Xlint:all</compilerArgument>
76114
</configuration>
77115
</plugin>
78116
<plugin>
79117
<groupId>org.apache.maven.plugins</groupId>
80118
<artifactId>maven-surefire-plugin</artifactId>
81-
<version>2.19.1</version>
119+
<version>3.0.0-M6</version>
82120
</plugin>
83121
<plugin>
84122
<groupId>org.apache.maven.plugins</groupId>
85123
<artifactId>maven-source-plugin</artifactId>
86-
<version>2.4</version>
124+
<version>3.2.1</version>
87125
<executions>
88126
<execution>
89127
<id>attach-sources</id>
90128
<goals>
91-
<goal>jar</goal>
129+
<goal>jar-no-fork</goal>
92130
</goals>
93131
</execution>
94132
</executions>
95133
</plugin>
134+
135+
<!-- copy javadoc -->
96136
<plugin>
97137
<groupId>org.apache.maven.plugins</groupId>
98138
<artifactId>maven-javadoc-plugin</artifactId>
99-
<version>2.10.3</version>
139+
<version>3.4.0</version>
100140
<configuration>
101141
<quiet>true</quiet>
102142
<show>public</show>
@@ -108,73 +148,113 @@
108148
<goals>
109149
<goal>jar</goal>
110150
</goals>
151+
<configuration>
152+
<!-- Java 11 -->
153+
<source>11</source>
154+
<!-- ignore javadoc errors -->
155+
<doclint>none</doclint>
156+
<failOnError>false</failOnError>
157+
</configuration>
111158
</execution>
112159
</executions>
113160
</plugin>
161+
<plugin>
162+
<groupId>org.apache.maven.plugins</groupId>
163+
<artifactId>maven-enforcer-plugin</artifactId>
164+
<version>3.0.0</version>
165+
<executions>
166+
<execution>
167+
<id>enforce-maven</id>
168+
<goals>
169+
<goal>enforce</goal>
170+
</goals>
171+
<configuration>
172+
<rules>
173+
<requireMavenVersion>
174+
<version>3.6</version>
175+
</requireMavenVersion>
176+
</rules>
177+
</configuration>
178+
</execution>
179+
</executions>
180+
</plugin>
181+
<!-- plugins for deployment to Sonatype/Maven Central -->
182+
<plugin>
183+
<groupId>org.apache.maven.plugins</groupId>
184+
<artifactId>maven-deploy-plugin</artifactId>
185+
<version>3.0.0-M2</version>
186+
</plugin>
114187
<plugin>
115188
<groupId>org.apache.maven.plugins</groupId>
116189
<artifactId>maven-gpg-plugin</artifactId>
117-
<version>1.5</version>
118-
<executions>
119-
<execution>
120-
<id>sign-artifacts</id>
121-
<phase>verify</phase>
122-
<goals>
123-
<goal>sign</goal>
124-
</goals>
125-
</execution>
126-
</executions>
190+
<version>3.0.1</version>
191+
<configuration>
192+
<!-- use gpg2 -->
193+
<executable>gpg2.exe</executable>
194+
</configuration>
195+
</plugin>
196+
<plugin>
197+
<groupId>org.apache.maven.plugins</groupId>
198+
<artifactId>maven-release-plugin</artifactId>
199+
<version>3.0.0-M5</version>
200+
<configuration>
201+
<localCheckout>true</localCheckout>
202+
<pushChanges>false</pushChanges>
203+
<releaseProfiles>release-sign-artifacts</releaseProfiles>
204+
<tagNameFormat>v@{project.version}</tagNameFormat>
205+
</configuration>
127206
</plugin>
128207
<plugin>
129208
<groupId>org.sonatype.plugins</groupId>
130209
<artifactId>nexus-staging-maven-plugin</artifactId>
131-
<version>1.6.7</version>
210+
<version>1.6.13</version>
132211
<extensions>true</extensions>
133212
<configuration>
134213
<serverId>ossrh</serverId>
135214
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
136215
<autoReleaseAfterClose>true</autoReleaseAfterClose>
137216
</configuration>
138217
</plugin>
218+
<!-- plugins for checking dependencies -->
219+
<plugin>
220+
<groupId>org.apache.maven.plugins</groupId>
221+
<artifactId>maven-dependency-plugin</artifactId>
222+
<version>3.3.0</version>
223+
</plugin>
224+
<plugin>
225+
<groupId>org.codehaus.mojo</groupId>
226+
<artifactId>versions-maven-plugin</artifactId>
227+
<version>2.10.0</version>
228+
</plugin>
139229
</plugins>
140230
</build>
141231

142-
<dependencies>
143-
144-
<!-- Logging API -->
145-
<dependency>
146-
<groupId>org.slf4j</groupId>
147-
<artifactId>slf4j-api</artifactId>
148-
<version>1.7.25</version>
149-
</dependency>
150-
151-
<!-- MVT encoding -->
152-
<dependency>
153-
<groupId>com.google.protobuf</groupId>
154-
<artifactId>protobuf-java</artifactId>
155-
<version>3.5.1</version>
156-
</dependency>
157-
158-
<!-- Geometry model -->
159-
<dependency>
160-
<groupId>org.locationtech.jts</groupId>
161-
<artifactId>jts-core</artifactId>
162-
<version>1.15.1</version>
163-
</dependency>
164-
165-
<!-- Testing -->
166-
<dependency>
167-
<groupId>junit</groupId>
168-
<artifactId>junit</artifactId>
169-
<version>4.12</version>
170-
<scope>test</scope>
171-
</dependency>
172-
<dependency>
173-
<groupId>org.slf4j</groupId>
174-
<artifactId>slf4j-simple</artifactId>
175-
<version>1.7.25</version>
176-
<scope>test</scope>
177-
</dependency>
178-
179-
</dependencies>
232+
<profiles>
233+
<!--
234+
The release-sign-artifacts profile only needs activated when cutting a release for maven central.
235+
It will generate additional artifacts for javadoc and source as well as GPG signatures for each artifact.
236+
This profile also assumes that the properties for the gpg plugin (such as gpg.keyname and gpg.passphrase
237+
are either defined in a settings.xml file or similar facility.
238+
-->
239+
<profile>
240+
<id>release-sign-artifacts</id>
241+
<build>
242+
<plugins>
243+
<plugin>
244+
<groupId>org.apache.maven.plugins</groupId>
245+
<artifactId>maven-gpg-plugin</artifactId>
246+
<executions>
247+
<execution>
248+
<id>sign-artifacts</id>
249+
<phase>verify</phase>
250+
<goals>
251+
<goal>sign</goal>
252+
</goals>
253+
</execution>
254+
</executions>
255+
</plugin>
256+
</plugins>
257+
</build>
258+
</profile>
259+
</profiles>
180260
</project>

src/test/java/com/wdtinc/mapbox_vector_tile/adapt/jts/MvtReaderTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,8 +150,7 @@ private static JtsMvt loadMvt(String file,
150150

151151
private static GeometryFactory createGeometryFactory() {
152152
final PrecisionModel precisionModel = new PrecisionModel();
153-
final PackedCoordinateSequenceFactory coordinateSequenceFactory =
154-
new PackedCoordinateSequenceFactory(PackedCoordinateSequenceFactory.DOUBLE, NUMBER_OF_DIMENSIONS);
153+
final PackedCoordinateSequenceFactory coordinateSequenceFactory = PackedCoordinateSequenceFactory.DOUBLE_FACTORY;
155154
return new GeometryFactory(precisionModel, SRID, coordinateSequenceFactory);
156155
}
157156
}

0 commit comments

Comments
 (0)