| 1 | <?xml version="1.0"?>
|
|---|
| 2 | <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|---|
| 3 | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0">
|
|---|
| 4 | <modelVersion>4.0.0</modelVersion>
|
|---|
| 5 | <groupId>org.openstreetmap.josm</groupId>
|
|---|
| 6 | <artifactId>josm-parent</artifactId>
|
|---|
| 7 | <version>1.5-SNAPSHOT</version>
|
|---|
| 8 | <packaging>pom</packaging>
|
|---|
| 9 | <properties>
|
|---|
| 10 | <project.build.sourceEncoding>US-ASCII</project.build.sourceEncoding>
|
|---|
| 11 | <project.reporting.outputEncoding>US-ASCII</project.reporting.outputEncoding>
|
|---|
| 12 | <java.lang.version>11</java.lang.version>
|
|---|
| 13 | <maven.compiler.release>${java.lang.version}</maven.compiler.release>
|
|---|
| 14 | <maven.compiler.source>${java.lang.version}</maven.compiler.source>
|
|---|
| 15 | <maven.compiler.target>${java.lang.version}</maven.compiler.target>
|
|---|
| 16 | <test.headless>true</test.headless>
|
|---|
| 17 | <sonar.host.url>https://josm.openstreetmap.de/sonar/</sonar.host.url>
|
|---|
| 18 | <sonar.projectKey>JOSM</sonar.projectKey>
|
|---|
| 19 | <jmockit.version>1.49.a</jmockit.version>
|
|---|
| 20 | <pmd.version>7.10.0</pmd.version>
|
|---|
| 21 | <jacoco.version>0.8.12</jacoco.version>
|
|---|
| 22 | <checkstyle.version>10.21.2</checkstyle.version>
|
|---|
| 23 | <spotbugs.version>4.9.0</spotbugs.version>
|
|---|
| 24 | <!-- Note: 2.0.0 requires Java 17, and we'll need to upgrade to it for Java 25 LTS (see JEP 486)-->
|
|---|
| 25 | <junit5-system-exit.version>1.1.2</junit5-system-exit.version>
|
|---|
| 26 | </properties>
|
|---|
| 27 | <modules>
|
|---|
| 28 | <module>..</module>
|
|---|
| 29 | <!-- The test pom is mostly for plugins; JOSM core dev doesn't need it -->
|
|---|
| 30 | <module>../test/pom.xml</module>
|
|---|
| 31 | </modules>
|
|---|
| 32 | <repositories>
|
|---|
| 33 | <repository>
|
|---|
| 34 | <id>JOSM</id>
|
|---|
| 35 | <url>https://josm.openstreetmap.de/repository/public/</url>
|
|---|
| 36 | </repository>
|
|---|
| 37 | </repositories>
|
|---|
| 38 | <pluginRepositories>
|
|---|
| 39 | <pluginRepository>
|
|---|
| 40 | <id>JOSM</id>
|
|---|
| 41 | <url>https://josm.openstreetmap.de/repository/public/</url>
|
|---|
| 42 | </pluginRepository>
|
|---|
| 43 | </pluginRepositories>
|
|---|
| 44 | <distributionManagement>
|
|---|
| 45 | <snapshotRepository>
|
|---|
| 46 | <id>josm-snapshots</id>
|
|---|
| 47 | <name>JOSM snapshots</name>
|
|---|
| 48 | <url>https://josm.openstreetmap.de/repository/snapshots</url>
|
|---|
| 49 | </snapshotRepository>
|
|---|
| 50 | </distributionManagement>
|
|---|
| 51 | <build>
|
|---|
| 52 | <pluginManagement>
|
|---|
| 53 | <plugins>
|
|---|
| 54 | <plugin>
|
|---|
| 55 | <groupId>org.codehaus.mojo</groupId>
|
|---|
| 56 | <artifactId>javacc-maven-plugin</artifactId>
|
|---|
| 57 | <version>3.1.0</version>
|
|---|
| 58 | </plugin>
|
|---|
| 59 | <plugin>
|
|---|
| 60 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 61 | <artifactId>maven-clean-plugin</artifactId>
|
|---|
| 62 | <version>3.4.0</version>
|
|---|
| 63 | </plugin>
|
|---|
| 64 | <plugin>
|
|---|
| 65 | <groupId>org.codehaus.mojo</groupId>
|
|---|
| 66 | <artifactId>exec-maven-plugin</artifactId>
|
|---|
| 67 | <version>3.5.0</version>
|
|---|
| 68 | </plugin>
|
|---|
| 69 | <plugin>
|
|---|
| 70 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 71 | <artifactId>maven-resources-plugin</artifactId>
|
|---|
| 72 | <version>3.3.1</version>
|
|---|
| 73 | </plugin>
|
|---|
| 74 | <plugin>
|
|---|
| 75 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 76 | <artifactId>maven-pmd-plugin</artifactId>
|
|---|
| 77 | <version>3.25.0</version>
|
|---|
| 78 | <dependencies>
|
|---|
| 79 | <dependency>
|
|---|
| 80 | <groupId>net.sourceforge.pmd</groupId>
|
|---|
| 81 | <artifactId>pmd-core</artifactId>
|
|---|
| 82 | <version>${pmd.version}</version>
|
|---|
| 83 | </dependency>
|
|---|
| 84 | <dependency>
|
|---|
| 85 | <groupId>net.sourceforge.pmd</groupId>
|
|---|
| 86 | <artifactId>pmd-java</artifactId>
|
|---|
| 87 | <version>${pmd.version}</version>
|
|---|
| 88 | </dependency>
|
|---|
| 89 | <dependency>
|
|---|
| 90 | <groupId>net.sourceforge.pmd</groupId>
|
|---|
| 91 | <artifactId>pmd-javascript</artifactId>
|
|---|
| 92 | <version>${pmd.version}</version>
|
|---|
| 93 | </dependency>
|
|---|
| 94 | <dependency>
|
|---|
| 95 | <groupId>net.sourceforge.pmd</groupId>
|
|---|
| 96 | <artifactId>pmd-jsp</artifactId>
|
|---|
| 97 | <version>${pmd.version}</version>
|
|---|
| 98 | </dependency>
|
|---|
| 99 | </dependencies>
|
|---|
| 100 | <configuration>
|
|---|
| 101 | <targetJdk>${java.lang.version}</targetJdk>
|
|---|
| 102 | </configuration>
|
|---|
| 103 | </plugin>
|
|---|
| 104 | <plugin>
|
|---|
| 105 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 106 | <artifactId>maven-surefire-plugin</artifactId>
|
|---|
| 107 | <version>3.5.1</version>
|
|---|
| 108 | </plugin>
|
|---|
| 109 | <plugin>
|
|---|
| 110 | <groupId>com.github.spotbugs</groupId>
|
|---|
| 111 | <artifactId>spotbugs-maven-plugin</artifactId>
|
|---|
| 112 | <version>4.8.6.5</version>
|
|---|
| 113 | </plugin>
|
|---|
| 114 | <plugin>
|
|---|
| 115 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 116 | <artifactId>maven-checkstyle-plugin</artifactId>
|
|---|
| 117 | <version>3.5.0</version>
|
|---|
| 118 | <dependencies>
|
|---|
| 119 | <dependency>
|
|---|
| 120 | <groupId>com.puppycrawl.tools</groupId>
|
|---|
| 121 | <artifactId>checkstyle</artifactId>
|
|---|
| 122 | <version>${checkstyle.version}</version>
|
|---|
| 123 | </dependency>
|
|---|
| 124 | </dependencies>
|
|---|
| 125 | </plugin>
|
|---|
| 126 | <!-- Used to merge compile dependencies into jars -->
|
|---|
| 127 | <plugin>
|
|---|
| 128 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 129 | <artifactId>maven-shade-plugin</artifactId>
|
|---|
| 130 | <version>3.6.0</version>
|
|---|
| 131 | <executions>
|
|---|
| 132 | <execution>
|
|---|
| 133 | <phase>package</phase>
|
|---|
| 134 | <goals>
|
|---|
| 135 | <goal>shade</goal>
|
|---|
| 136 | </goals>
|
|---|
| 137 | <configuration>
|
|---|
| 138 | <filters>
|
|---|
| 139 | <filter>
|
|---|
| 140 | <artifact>*:*</artifact>
|
|---|
| 141 | <excludes>
|
|---|
| 142 | <!--<exclude>META-INF/*</exclude>-->
|
|---|
| 143 | <!--<exclude>*</exclude>-->
|
|---|
| 144 | <exclude>META-INF/versions/*</exclude>
|
|---|
| 145 | <exclude>META-INF/maven/**</exclude>
|
|---|
| 146 | <exclude>META-INF/*.SF</exclude>
|
|---|
| 147 | <exclude>META-INF/*.DSA</exclude>
|
|---|
| 148 | <exclude>META-INF/*.RSA</exclude>
|
|---|
| 149 | </excludes>
|
|---|
| 150 | </filter>
|
|---|
| 151 | </filters>
|
|---|
| 152 | </configuration>
|
|---|
| 153 | </execution>
|
|---|
| 154 | </executions>
|
|---|
| 155 | </plugin>
|
|---|
| 156 | <plugin>
|
|---|
| 157 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 158 | <artifactId>maven-jar-plugin</artifactId>
|
|---|
| 159 | <version>3.4.2</version>
|
|---|
| 160 | <configuration>
|
|---|
| 161 | <archive>
|
|---|
| 162 | <addMavenDescriptor>false</addMavenDescriptor>
|
|---|
| 163 | </archive>
|
|---|
| 164 | </configuration>
|
|---|
| 165 | </plugin>
|
|---|
| 166 | <plugin>
|
|---|
| 167 | <groupId>org.sonarsource.scanner.maven</groupId>
|
|---|
| 168 | <artifactId>sonar-maven-plugin</artifactId>
|
|---|
| 169 | <version>3.7.0.1746</version>
|
|---|
| 170 | </plugin>
|
|---|
| 171 | <!-- Used to set version information -->
|
|---|
| 172 | <plugin>
|
|---|
| 173 | <groupId>org.codehaus.mojo</groupId>
|
|---|
| 174 | <artifactId>buildnumber-maven-plugin</artifactId>
|
|---|
| 175 | <version>3.2.1</version>
|
|---|
| 176 | </plugin>
|
|---|
| 177 | </plugins>
|
|---|
| 178 | </pluginManagement>
|
|---|
| 179 | <plugins>
|
|---|
| 180 | <plugin>
|
|---|
| 181 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 182 | <artifactId>maven-enforcer-plugin</artifactId>
|
|---|
| 183 | <version>3.5.0</version>
|
|---|
| 184 | <executions>
|
|---|
| 185 | <execution>
|
|---|
| 186 | <id>enforce-versions</id>
|
|---|
| 187 | <goals>
|
|---|
| 188 | <goal>enforce</goal>
|
|---|
| 189 | </goals>
|
|---|
| 190 | <configuration>
|
|---|
| 191 | <rules>
|
|---|
| 192 | <requireMavenVersion>
|
|---|
| 193 | <version>3.6.3</version>
|
|---|
| 194 | </requireMavenVersion>
|
|---|
| 195 | <requireJavaVersion>
|
|---|
| 196 | <version>${java.lang.version}</version>
|
|---|
| 197 | </requireJavaVersion>
|
|---|
| 198 | </rules>
|
|---|
| 199 | </configuration>
|
|---|
| 200 | </execution>
|
|---|
| 201 | </executions>
|
|---|
| 202 | </plugin>
|
|---|
| 203 | <plugin>
|
|---|
| 204 | <groupId>org.apache.maven.plugins</groupId>
|
|---|
| 205 | <artifactId>maven-resources-plugin</artifactId>
|
|---|
| 206 | <version>3.3.1</version>
|
|---|
| 207 | <executions>
|
|---|
| 208 | <execution>
|
|---|
| 209 | <id>copy-root-resources</id>
|
|---|
| 210 | <phase>generate-resources</phase>
|
|---|
| 211 | <goals>
|
|---|
| 212 | <goal>copy-resources</goal>
|
|---|
| 213 | </goals>
|
|---|
| 214 | <configuration>
|
|---|
| 215 | <outputDirectory>${project.basedir}/target/classes</outputDirectory>
|
|---|
| 216 | <resources>
|
|---|
| 217 | <resource>
|
|---|
| 218 | <directory>${project.basedir}</directory>
|
|---|
| 219 | <includes>
|
|---|
| 220 | <include>GPL-v2.0.txt</include>
|
|---|
| 221 | <include>GPL-v3.0.txt</include>
|
|---|
| 222 | <include>LICENSE</include>
|
|---|
| 223 | <include>LICENSE.md</include>
|
|---|
| 224 | <include>README</include>
|
|---|
| 225 | <include>README.md</include>
|
|---|
| 226 | </includes>
|
|---|
| 227 | </resource>
|
|---|
| 228 | </resources>
|
|---|
| 229 | </configuration>
|
|---|
| 230 | </execution>
|
|---|
| 231 | </executions>
|
|---|
| 232 | </plugin>
|
|---|
| 233 | <plugin> <!-- Adds properties that point at dependency jars. Useful for jmockit and junit5-system-exit -->
|
|---|
| 234 | <artifactId>maven-dependency-plugin</artifactId>
|
|---|
| 235 | <executions>
|
|---|
| 236 | <execution>
|
|---|
| 237 | <goals>
|
|---|
| 238 | <goal>properties</goal>
|
|---|
| 239 | </goals>
|
|---|
| 240 | </execution>
|
|---|
| 241 | </executions>
|
|---|
| 242 | </plugin>
|
|---|
| 243 | </plugins>
|
|---|
| 244 | </build>
|
|---|
| 245 | <dependencyManagement>
|
|---|
| 246 | <dependencies>
|
|---|
| 247 | <dependency>
|
|---|
| 248 | <groupId>org.jmockit</groupId>
|
|---|
| 249 | <artifactId>jmockit</artifactId>
|
|---|
| 250 | <version>${jmockit.version}</version>
|
|---|
| 251 | <scope>test</scope>
|
|---|
| 252 | </dependency>
|
|---|
| 253 | <dependency>
|
|---|
| 254 | <groupId>org.junit</groupId>
|
|---|
| 255 | <artifactId>junit-bom</artifactId>
|
|---|
| 256 | <version>5.11.4</version>
|
|---|
| 257 | <type>pom</type>
|
|---|
| 258 | <scope>import</scope>
|
|---|
| 259 | </dependency>
|
|---|
| 260 | <dependency>
|
|---|
| 261 | <groupId>org.openstreetmap.jmapviewer</groupId>
|
|---|
| 262 | <artifactId>jmapviewer</artifactId>
|
|---|
| 263 | <version>2.25</version>
|
|---|
| 264 | <scope>provided</scope>
|
|---|
| 265 | </dependency>
|
|---|
| 266 | <dependency>
|
|---|
| 267 | <groupId>jakarta.json</groupId>
|
|---|
| 268 | <artifactId>jakarta.json-api</artifactId>
|
|---|
| 269 | <version>2.1.3</version>
|
|---|
| 270 | <scope>provided</scope>
|
|---|
| 271 | </dependency>
|
|---|
| 272 | <dependency>
|
|---|
| 273 | <groupId>org.eclipse.parsson</groupId>
|
|---|
| 274 | <artifactId>parsson</artifactId>
|
|---|
| 275 | <version>1.1.7</version>
|
|---|
| 276 | <scope>provided</scope>
|
|---|
| 277 | </dependency>
|
|---|
| 278 | <dependency>
|
|---|
| 279 | <groupId>org.apache.commons</groupId>
|
|---|
| 280 | <artifactId>commons-jcs3-core</artifactId>
|
|---|
| 281 | <version>3.2.1</version>
|
|---|
| 282 | <scope>provided</scope>
|
|---|
| 283 | </dependency>
|
|---|
| 284 | <dependency>
|
|---|
| 285 | <groupId>org.apache.commons</groupId>
|
|---|
| 286 | <artifactId>commons-compress</artifactId>
|
|---|
| 287 | <version>1.27.1</version>
|
|---|
| 288 | <scope>provided</scope>
|
|---|
| 289 | </dependency>
|
|---|
| 290 | <dependency>
|
|---|
| 291 | <groupId>jakarta.annotation</groupId>
|
|---|
| 292 | <artifactId>jakarta.annotation-api</artifactId>
|
|---|
| 293 | <version>3.0.0</version>
|
|---|
| 294 | <scope>provided</scope>
|
|---|
| 295 | </dependency>
|
|---|
| 296 | <dependency>
|
|---|
| 297 | <groupId>org.tukaani</groupId>
|
|---|
| 298 | <artifactId>xz</artifactId>
|
|---|
| 299 | <version>1.10</version>
|
|---|
| 300 | <scope>provided</scope>
|
|---|
| 301 | </dependency>
|
|---|
| 302 | <dependency>
|
|---|
| 303 | <groupId>com.adobe.xmp</groupId>
|
|---|
| 304 | <artifactId>xmpcore</artifactId>
|
|---|
| 305 | <version>6.1.11</version>
|
|---|
| 306 | <scope>provided</scope>
|
|---|
| 307 | </dependency>
|
|---|
| 308 | <dependency>
|
|---|
| 309 | <groupId>com.drewnoakes</groupId>
|
|---|
| 310 | <artifactId>metadata-extractor</artifactId>
|
|---|
| 311 | <version>2.19.0</version>
|
|---|
| 312 | <scope>provided</scope>
|
|---|
| 313 | </dependency>
|
|---|
| 314 | <dependency>
|
|---|
| 315 | <groupId>com.formdev</groupId>
|
|---|
| 316 | <artifactId>svgSalamander</artifactId>
|
|---|
| 317 | <version>1.1.4</version>
|
|---|
| 318 | <scope>provided</scope>
|
|---|
| 319 | </dependency>
|
|---|
| 320 | <dependency>
|
|---|
| 321 | <groupId>ch.poole</groupId>
|
|---|
| 322 | <artifactId>OpeningHoursParser</artifactId>
|
|---|
| 323 | <version>0.28.2</version>
|
|---|
| 324 | <scope>provided</scope>
|
|---|
| 325 | </dependency>
|
|---|
| 326 | <!-- Don't forget to update org.openstreetmap.josm.tools.Tag2Link#PREF_SOURCE -->
|
|---|
| 327 | <dependency>
|
|---|
| 328 | <groupId>org.webjars.npm</groupId>
|
|---|
| 329 | <artifactId>tag2link</artifactId>
|
|---|
| 330 | <version>2025.7.21</version>
|
|---|
| 331 | <scope>provided</scope>
|
|---|
| 332 | </dependency>
|
|---|
| 333 | <dependency>
|
|---|
| 334 | <groupId>org.jacoco</groupId>
|
|---|
| 335 | <artifactId>org.jacoco.ant</artifactId>
|
|---|
| 336 | <version>${jacoco.version}</version>
|
|---|
| 337 | <scope>test</scope>
|
|---|
| 338 | </dependency>
|
|---|
| 339 | <dependency>
|
|---|
| 340 | <groupId>com.github.spotbugs</groupId>
|
|---|
| 341 | <artifactId>spotbugs-annotations</artifactId>
|
|---|
| 342 | <version>${spotbugs.version}</version>
|
|---|
| 343 | <scope>test</scope>
|
|---|
| 344 | </dependency>
|
|---|
| 345 | <dependency>
|
|---|
| 346 | <groupId>com.ginsberg</groupId>
|
|---|
| 347 | <artifactId>junit5-system-exit</artifactId>
|
|---|
| 348 | <version>${junit5-system-exit.version}</version>
|
|---|
| 349 | <scope>test</scope>
|
|---|
| 350 | </dependency>
|
|---|
| 351 | <dependency>
|
|---|
| 352 | <groupId>org.wiremock</groupId>
|
|---|
| 353 | <artifactId>wiremock</artifactId>
|
|---|
| 354 | <version>3.10.0</version>
|
|---|
| 355 | <scope>test</scope>
|
|---|
| 356 | </dependency>
|
|---|
| 357 | <dependency>
|
|---|
| 358 | <groupId>io.github.classgraph</groupId>
|
|---|
| 359 | <artifactId>classgraph</artifactId>
|
|---|
| 360 | <version>4.8.179</version>
|
|---|
| 361 | <scope>test</scope>
|
|---|
| 362 | </dependency>
|
|---|
| 363 | <dependency>
|
|---|
| 364 | <groupId>net.trajano.commons</groupId>
|
|---|
| 365 | <artifactId>commons-testing</artifactId>
|
|---|
| 366 | <version>2.1.0</version>
|
|---|
| 367 | <scope>test</scope>
|
|---|
| 368 | </dependency>
|
|---|
| 369 | <dependency>
|
|---|
| 370 | <groupId>nl.jqno.equalsverifier</groupId>
|
|---|
| 371 | <artifactId>equalsverifier</artifactId>
|
|---|
| 372 | <version>3.18.1</version>
|
|---|
| 373 | <scope>test</scope>
|
|---|
| 374 | </dependency>
|
|---|
| 375 | <dependency>
|
|---|
| 376 | <groupId>org.apache.commons</groupId>
|
|---|
| 377 | <artifactId>commons-lang3</artifactId>
|
|---|
| 378 | <version>3.18.0</version>
|
|---|
| 379 | <scope>test</scope>
|
|---|
| 380 | </dependency>
|
|---|
| 381 | <dependency>
|
|---|
| 382 | <groupId>org.awaitility</groupId>
|
|---|
| 383 | <artifactId>awaitility</artifactId>
|
|---|
| 384 | <version>4.2.2</version>
|
|---|
| 385 | <scope>test</scope>
|
|---|
| 386 | </dependency>
|
|---|
| 387 | </dependencies>
|
|---|
| 388 | </dependencyManagement>
|
|---|
| 389 | <profiles>
|
|---|
| 390 | <profile>
|
|---|
| 391 | <id>java-17</id>
|
|---|
| 392 | <activation>
|
|---|
| 393 | <jdk>[17</jdk>
|
|---|
| 394 | </activation>
|
|---|
| 395 | <properties>
|
|---|
| 396 | <junit5-system-exit.version>2.0.2</junit5-system-exit.version>
|
|---|
| 397 | </properties>
|
|---|
| 398 | </profile>
|
|---|
| 399 | </profiles>
|
|---|
| 400 | </project>
|
|---|