source: osm/applications/editors/josm/plugins/pom.xml@ 36419

Last change on this file since 36419 was 36419, checked in by taylor.smock, 12 months ago

See #23716: Update default plugin.compile.version

File size: 23.4 KB
Line 
1<?xml version="1.0"?>
2<project xmlns="http://maven.apache.org/POM/4.0.0" 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">
4 <modelVersion>4.0.0</modelVersion>
5 <groupId>org.openstreetmap.josm.plugins</groupId>
6 <artifactId>plugin-root</artifactId>
7 <parent>
8 <groupId>org.openstreetmap.josm</groupId>
9 <artifactId>josm-parent</artifactId>
10 <version>1.5-SNAPSHOT</version>
11 <relativePath>../core/nodist/pom.xml</relativePath>
12 </parent>
13
14 <name>JOSM Plugins</name>
15 <url>https://josm.openstreetmap.de</url>
16 <properties>
17 <josm>../../core/dist/josm-custom.jar</josm>
18 <josm.test.build.dir>../../core/test/build</josm.test.build.dir>
19 <java.lang.version>11</java.lang.version>
20 <maven.compiler.release>${java.lang.version}</maven.compiler.release>
21 <plugin.tools.dir>../00_tools</plugin.tools.dir>
22 <plugin.build.dir>build</plugin.build.dir>
23 <plugin.test.dir>test</plugin.test.dir>
24 <plugin.test.data.dir>${plugin.test.dir}/data</plugin.test.data.dir>
25 <plugin.test.src.dir>${plugin.test.dir}/unit</plugin.test.src.dir>
26 <plugin.src.dir>src</plugin.src.dir>
27 <!-- most plugins default to resource directories in root, e.g. ./data, ./images, ./resources -->
28 <plugin.resources.dir>${project.basedir}</plugin.resources.dir>
29 <plugin.doc.dir>javadoc</plugin.doc.dir>
30 <plugin.lib.dir>lib</plugin.lib.dir>
31 <!-- this is the directory where the plugin jar is copied to -->
32 <!-- We specifically don't want to put the new jars in dist just yet, this may change sometime -->
33 <plugin.dist.dir>../../distMaven</plugin.dist.dir>
34 <javadoc.executable>javadoc</javadoc.executable>
35 <manifest>MANIFEST</manifest>
36 <manifest.unixoid>MANIFEST-unixoid</manifest.unixoid>
37 <manifest.windows>MANIFEST-windows</manifest.windows>
38 <manifest.osx>MANIFEST-osx</manifest.osx>
39 <plugin.compile.version>1.5-SNAPSHOT</plugin.compile.version>
40 <plugin.jar>${project.name}.jar</plugin.jar>
41 <plugin.unixoid.jar>${project.name}-unixoid.jar</plugin.unixoid.jar>
42 <plugin.windows.jar>${project.name}-windows.jar</plugin.windows.jar>
43 <plugin.osx.jar>${project.name}-osx.jar</plugin.osx.jar>
44 <plugin.sources.jar>${project.name}-sources.jar</plugin.sources.jar>
45 <plugin.javadoc.jar>${project.name}-javadoc.jar</plugin.javadoc.jar>
46 <jacoco.inclbootstrapclasses>false</jacoco.inclbootstrapclasses>
47 <jacoco.inclnolocationclasses>false</jacoco.inclnolocationclasses>
48 <junit.printsummary>on</junit.printsummary>
49 <sonar.projectKey>JOSM-Plugins</sonar.projectKey>
50 <geotools.version>31.1</geotools.version>
51 </properties>
52 <packaging>pom</packaging>
53 <inceptionYear>2005</inceptionYear>
54 <licenses>
55 <license>
56 <name>GPL-2.0-or-later</name>
57 <url>https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html</url>
58 <distribution>repo</distribution>
59 </license>
60 </licenses>
61 <organization>
62 <name>JOSM</name>
63 <url>https://josm.openstreetmap.de</url>
64 </organization>
65 <scm>
66 <connection>scm:svn:https://josm.openstreetmap.de/svn/trunk</connection>
67 <url>https://josm.openstreetmap.de/browser/josm/trunk</url>
68 </scm>
69 <issueManagement>
70 <system>Trac</system>
71 <url>https://josm.openstreetmap.de</url>
72 </issueManagement>
73 <mailingLists>
74 <mailingList>
75 <name>josm-dev</name>
76 <archive>https://lists.openstreetmap.org/pipermail/josm-dev/</archive>
77 <post>josm-dev@openstreetmap.org</post>
78 </mailingList>
79 </mailingLists>
80 <modules>
81 <module>../core/nodist/pom.xml</module>
82 <module>addrinterpolation</module>
83 <module>alignways</module>
84 <module>apache-commons</module>
85 <module>apache-http</module>
86 <module>buildings_tools</module>
87 <module>cadastre-fr</module>
88 <module>canvec_helper</module>
89 <module>colorscheme</module>
90 <module>ColumbusCSV</module>
91 <module>comfort0</module>
92 <module>CommandLine</module>
93 <module>Create_grid_of_ways</module>
94 <module>CustomizePublicTransportStop</module>
95 <module>dataimport</module>
96 <module>DirectDownload</module>
97 <module>DirectUpload</module>
98 <module>editgpx</module>
99 <module>ElevationProfile</module>
100 <module>epci-fr</module>
101 <module>eventbus</module>
102 <module>ext_tools</module>
103 <module>FastDraw</module>
104 <module>FixAddresses</module>
105 <module>flatlaf</module>
106 <module>geochat</module>
107 <module>geotools</module>
108 <module>globalsat</module>
109 <module>gpsblam</module>
110 <module>graphview</module>
111 <module>HouseNumberTaggingTool</module>
112 <module>http2</module>
113 <module>ejml</module>
114 <module>imagery-xml-bounds</module>
115 <module>imagery_cachexport</module>
116 <module>imagery_offset_db</module>
117 <module>imagewaypoint</module>
118 <module>ImportImagePlugin</module>
119 <module>importvec</module>
120 <module>indoor_sweepline</module>
121 <module>infomode</module>
122 <module>jackson</module>
123 <module>jaxb</module>
124 <module>jna</module>
125 <module>jts</module>
126 <module>junctionchecking</module>
127 <module>lwjgl/modules</module>
128 <module>livegps</module>
129 <module>log4j</module>
130 <module>measurement</module>
131 <module>merge-overlap</module>
132 <module>michigan_left</module>
133 <module>namemanager</module>
134 <module>NanoLog</module>
135 <module>native-password-manager</module>
136 <module>o5m</module>
137 <module>opendata/modules</module>
138 <module>OpeningHoursEditor</module>
139 <module>openvisible</module>
140 <module>pbf</module>
141 <module>pdfimport</module>
142 <module>photo_geotagging</module>
143 <module>photoadjust</module>
144 <module>pointInfo</module>
145 <module>poly</module>
146 <module>print</module>
147 <module>public_transport</module>
148 <module>rasterfilters</module>
149 <module>reltoolbox</module>
150 <module>reverter</module>
151 <module>roadsigns</module>
152 <module>routes</module>
153 <module>routing</module>
154 <module>SaudiNationalAddress</module>
155 <module>sds</module>
156 <module>seachart</module>
157 <module>seachartedit</module>
158 <module>simplifyarea</module>
159 <module>smed</module>
160 <module>splinex</module>
161 <module>surveyor</module>
162 <module>tageditor</module>
163 <module>tagging-preset-tester</module>
164 <module>terracer</module>
165 <module>touchscreenhelper</module>
166 <module>tracer</module>
167 <module>tracer2</module>
168 <module>turnlanes</module>
169 <module>turnrestrictions</module>
170 <module>undelete</module>
171 <module>utilsplugin2</module>
172 <module>waydownloader</module>
173 <module>waypoint_search</module>
174 <module>wms-turbo-challenge2</module>
175 </modules>
176 <dependencies>
177 <dependency>
178 <groupId>org.openstreetmap.josm</groupId>
179 <artifactId>josm</artifactId>
180 <version>${plugin.compile.version}</version>
181 <scope>provided</scope>
182 </dependency>
183 <dependency>
184 <groupId>org.openstreetmap.josm</groupId>
185 <artifactId>josm-unittest</artifactId>
186 </dependency>
187 </dependencies>
188 <dependencyManagement>
189 <dependencies>
190 <dependency>
191 <groupId>org.openstreetmap.josm</groupId>
192 <artifactId>josm-unittest</artifactId>
193 <version>SNAPSHOT</version>
194 <scope>test</scope>
195 </dependency>
196 </dependencies>
197 </dependencyManagement>
198 <build>
199 <sourceDirectory>${plugin.src.dir}</sourceDirectory>
200 <testSourceDirectory>${plugin.test.src.dir}</testSourceDirectory>
201 <resources>
202 <resource>
203 <directory>${plugin.resources.dir}/data</directory>
204 <targetPath>data</targetPath>
205 </resource>
206 <resource>
207 <directory>${plugin.resources.dir}/images</directory>
208 <targetPath>images</targetPath>
209 </resource>
210 <resource>
211 <directory>${plugin.resources.dir}/resources</directory>
212 <targetPath>resources</targetPath>
213 </resource>
214 </resources>
215 <testResources>
216 <testResource>
217 <directory>${plugin.test.data.dir}</directory>
218 </testResource>
219 </testResources>
220 <plugins>
221 <plugin>
222 <groupId>org.apache.maven.plugins</groupId>
223 <artifactId>maven-shade-plugin</artifactId>
224 </plugin>
225 </plugins>
226 <pluginManagement>
227 <plugins>
228 <!-- Configure checkstyle/pmd/other lint plugins -->
229 <plugin>
230 <groupId>com.github.spotbugs</groupId>
231 <artifactId>spotbugs-maven-plugin</artifactId>
232 <version>4.8.1.0</version>
233 <configuration>
234 <xmlOutput>true</xmlOutput>
235 <spotbugsXmlOutputFilename>spotbugs-josm.xml</spotbugsXmlOutputFilename>
236 <effort>max</effort>
237 <excludeFilterFile>${spotbugs.dir}/josm-filter.xml</excludeFilterFile>
238 <onlyAnalyze>org.openstreetmap.josm.-</onlyAnalyze>
239 <threshold>LOW</threshold>
240 </configuration>
241 <!-- This is commented out until all the current bugs are fixed. TODO uncomment!
242 <executions>
243 <execution>
244 <id>validate</id>
245 <phase>validate</phase>
246 <goals>
247 <goal>check</goal>
248 </goals>
249 </execution>
250 </executions>
251 -->
252 </plugin>
253 <plugin>
254 <groupId>org.apache.maven.plugins</groupId>
255 <artifactId>maven-checkstyle-plugin</artifactId>
256 <version>3.3.1</version>
257 <configuration>
258 <configLocation>${project.basedir}/../checkstyle-config.xml</configLocation>
259 <includeTestSourceDirectory>true</includeTestSourceDirectory>
260 <outputFile>${project.basedir}/checkstyle-josm-${project.name}.xml</outputFile>
261 <!-- checkstyle cannot parse module-info.java yet -->
262 <excludes>module-info.java</excludes>
263 </configuration>
264 <executions>
265 <execution>
266 <id>validate</id>
267 <phase>validate</phase>
268 <goals>
269 <goal>check</goal>
270 </goals>
271 </execution>
272 </executions>
273 </plugin>
274 <!-- Configure the test plugin, specifically enable autodetection of global extensions -->
275 <plugin>
276 <artifactId>maven-surefire-plugin</artifactId>
277 <version>3.2.5</version>
278 <configuration>
279 <skipAfterFailureCount>1</skipAfterFailureCount>
280 <argLine>-javaagent:"${settings.localRepository}"/org/jmockit/jmockit/${jmockit.version}/jmockit-${jmockit.version}.jar</argLine>
281 <properties>
282 <configurationParameters>
283 file.encoding = UTF-8
284 java.locale.providers = SPI,CLDR
285 junit.jupiter.extensions.autodetection.enabled = true
286 junit.jupiter.execution.parallel.enabled = true
287 </configurationParameters>
288 </properties>
289 <systemPropertyVariables>
290 <josm.home>${plugin.test.dir}/config/josm.home</josm.home>
291 <josm.test.data>${plugin.test.data.dir}</josm.test.data>
292 <java.awt.headless>${test.headless}</java.awt.headless>
293 <glass.platform>Monocle</glass.platform>
294 <monocle.platform>Headless</monocle.platform>
295 <prism.order>sw</prism.order>
296 </systemPropertyVariables>
297 </configuration>
298 </plugin>
299 <!-- the clean plugin is needed since we currently store generated sources in the source directory -->
300 <plugin>
301 <groupId>org.apache.maven.plugins</groupId>
302 <artifactId>maven-clean-plugin</artifactId>
303 <version>3.3.2</version>
304 <configuration>
305 <filesets>
306 <fileset>
307 <directory>${plugin.build.dir}</directory>
308 </fileset>
309 <fileset>
310 <directory>${plugin.dist.dir}</directory>
311 <includes>
312 <include>${plugin.jar}</include>
313 <include>${plugin.unixoid.jar}</include>
314 <include>${plugin.windows.jar}</include>
315 <include>${plugin.osx.jar}</include>
316 <include>${plugin.sources.jar}</include>
317 <include>${plugin.javadoc.jar}</include>
318 </includes>
319 </fileset>
320 <fileset>
321 <directory>${project.basedir}</directory>
322 <includes>
323 <include>checkstyle-josm-${project.name}.xml</include>
324 </includes>
325 </fileset>
326 </filesets>
327 </configuration>
328 </plugin>
329 <plugin>
330 <groupId>com.diffplug.spotless</groupId>
331 <artifactId>spotless-maven-plugin</artifactId>
332 <version>2.43.0</version>
333 <configuration>
334 <java>
335 <eclipse>
336 <version>4.21.0</version>
337 <file>${project.basedir}/../00_core_tools/eclipse/formatter.xml</file>
338 </eclipse>
339 <removeUnusedImports/>
340 <licenseHeader>
341 <content>// License: GPL. For details, see LICENSE file.</content>
342 </licenseHeader>
343 </java>
344 </configuration>
345 <executions>
346 <execution>
347 <goals>
348 <goal>check</goal>
349 </goals>
350 </execution>
351 </executions>
352 </plugin>
353 <!-- Used to merge compile dependencies into jars -->
354 <plugin>
355 <groupId>org.apache.maven.plugins</groupId>
356 <artifactId>maven-shade-plugin</artifactId>
357 <version>3.5.3</version>
358 <executions>
359 <execution>
360 <phase>package</phase>
361 <goals>
362 <goal>shade</goal>
363 </goals>
364 <configuration>
365 <outputDirectory>${plugin.dist.dir}</outputDirectory>
366 <finalName>${project.name}</finalName>
367 </configuration>
368 </execution>
369 </executions>
370 </plugin>
371 <!-- Used to share properties between maven, gradle, and ant, where there is a gradle.properties file -->
372 <plugin>
373 <groupId>org.codehaus.mojo</groupId>
374 <artifactId>properties-maven-plugin</artifactId>
375 <version>1.2.1</version>
376 <executions>
377 <execution>
378 <phase>initialize</phase>
379 <goals>
380 <goal>read-project-properties</goal>
381 </goals>
382 <configuration>
383 <files>
384 <file>gradle.properties</file>
385 </files>
386 </configuration>
387 </execution>
388 </executions>
389 </plugin>
390 <plugin>
391 <groupId>org.apache.maven.plugins</groupId>
392 <artifactId>maven-jar-plugin</artifactId>
393 <configuration>
394 <archive>
395 <manifestEntries>
396 <!-- For full documentation, see https://josm.openstreetmap.de/wiki/DevelopersGuide/DevelopingPlugins#ThemanifestfileforaJOSMplugin -->
397 <Plugin-Mainversion>${plugin.main.version}</Plugin-Mainversion>
398 <Plugin-Version>${project.version}</Plugin-Version>
399 <Plugin-Class>${plugin.class}</Plugin-Class>
400 <Plugin-Description>${plugin.description}</Plugin-Description>
401 <!-- These are optional, but are either added almost all the time or can be auto generated -->
402 <Plugin-Date>${maven.build.timestamp}</Plugin-Date>
403 <Author>${plugin.author}</Author>
404 <!-- These are optional and/or uncommon -->
405 <!-- plugin.platform must be `Windows`, `Osx`, or `Unixoid` -->
406 <!--
407 <Plugin-Platform>${plugin.platform}</Plugin-Platform>
408 <Plugin-Provides>${plugin.provides}</Plugin-Provides>
409 <Plugin-Minimum-Java-Version>${plugin.minimum.java.version}</Plugin-Minimum-Java-Version>
410 <Plugin-Early>${plugin.early}</Plugin-Early>
411 <Plugin-Link>${plugin.link}</Plugin-Link>
412 <Plugin-Icon>${plugin.icon}</Plugin-Icon>
413 <Plugin-Stage>${plugin.stage}</Plugin-Stage>
414 <Plugin-Requires>${plugin.requires}</Plugin-Requires>
415 <Plugin-Canloadatruntime>${plugin.canloadatruntime}</Plugin-Canloadatruntime>
416 <Class-Path>${plugin.classpath}</Class-Path>
417 -->
418 <!-- Additional entries: <xxx>_Plugin-Url (doesn't work well with xml) and <lang>_Plugin_Description -->
419 </manifestEntries>
420 </archive>
421 </configuration>
422 </plugin>
423 <!-- For any jaxb plugins -->
424 <plugin>
425 <groupId>org.codehaus.mojo</groupId>
426 <artifactId>jaxb2-maven-plugin</artifactId>
427 <version>2.5.0</version>
428 </plugin>
429 </plugins>
430 </pluginManagement>
431 </build>
432 <profiles>
433 <profile>
434 <!-- This profile is needed to avoid trying to install a non-jar file -->
435 <id>not-pom-packaging</id>
436 <activation>
437 <property>
438 <name>packaging</name>
439 <value>!pom</value>
440 </property>
441 </activation>
442 <build>
443 <pluginManagement>
444 <plugins>
445 <plugin>
446 <groupId>org.apache.maven.plugins</groupId>
447 <artifactId>maven-install-plugin</artifactId>
448 <version>3.1.1</version>
449 <executions>
450 <execution>
451 <id>dist-install</id>
452 <phase>install</phase>
453 <goals>
454 <goal>install-file</goal>
455 </goals>
456 <configuration>
457 <file>${plugin.dist.dir}/${project.name}.jar</file>
458 <artifactId>${project.artifactId}</artifactId>
459 <groupId>${project.groupId}</groupId>
460 <version>${project.version}</version>
461 <packaging>${project.packaging}</packaging>
462 </configuration>
463 </execution>
464 </executions>
465 </plugin>
466 </plugins>
467 </pluginManagement>
468 </build>
469 </profile>
470 <profile>
471 <id>java-21-plugins</id>
472 <activation>
473 <jdk>[21,]</jdk>
474 </activation>
475 <modules>
476 <module>FIT</module>
477 <module>MicrosoftStreetside</module>
478 </modules>
479 </profile>
480 <profile>
481 <id>java-17-plugins</id>
482 <activation>
483 <jdk>[17,]</jdk>
484 </activation>
485 <modules>
486 <module>javafx</module>
487 <module>imageio</module>
488 <module>pmtiles</module>
489 </modules>
490 </profile>
491 <profile>
492 <id>areaselector</id>
493 <activation><file><exists>areaselector/pom.xml</exists></file></activation>
494 <modules><module>areaselector</module></modules>
495 </profile>
496 <profile>
497 <id>austriaaddresshelper</id>
498 <activation><file><exists>austriaaddresshelper/pom.xml</exists></file></activation>
499 <modules><module>austriaaddresshelper</module></modules>
500 </profile>
501 <profile>
502 <id>auto-tools</id>
503 <activation><file><exists>auto-tools/pom.xml</exists></file></activation>
504 <modules><module>auto-tools</module></modules>
505 </profile>
506 <profile>
507 <id>Building-Generalization</id>
508 <activation><file><exists>Building-Generalization/pom.xml</exists></file></activation>
509 <modules><module>Building-Generalization</module></modules>
510 </profile>
511 <profile>
512 <id>changeset-viewer</id>
513 <activation><file><exists>changeset-viewer/pom.xml</exists></file></activation>
514 <modules><module>changeset-viewer</module></modules>
515 </profile>
516 <profile>
517 <id>Color</id>
518 <activation><file><exists>Color/pom.xml</exists></file></activation>
519 <modules><module>Color</module></modules>
520 </profile>
521 <profile>
522 <id>configuration</id>
523 <activation><file><exists>configuration/pom.xml</exists></file></activation>
524 <modules><module>configuration</module></modules>
525 </profile>
526 <profile>
527 <id>conflation</id>
528 <activation><file><exists>conflation/pom.xml</exists></file></activation>
529 <modules><module>conflation</module></modules>
530 </profile>
531 <profile>
532 <id>continuos-download</id>
533 <activation><file><exists>continuos-download/pom.xml</exists></file></activation>
534 <modules><module>continuos-download</module></modules>
535 </profile>
536 <profile>
537 <id>Dxf-Import</id>
538 <activation><file><exists>Dxf-Import/pom.xml</exists></file></activation>
539 <modules><module>Dxf-Import</module></modules>
540 </profile>
541 <profile>
542 <id>gridify</id>
543 <activation><file><exists>gridify/pom.xml</exists></file></activation>
544 <modules><module>gridify</module></modules>
545 </profile>
546 <profile>
547 <id>improve-way</id>
548 <activation><file><exists>improve-way/pom.xml</exists></file></activation>
549 <modules><module>improve-way</module></modules>
550 </profile>
551 <profile>
552 <id>indoorhelper</id>
553 <activation><file><exists>indoorhelper/pom.xml</exists></file></activation>
554 <modules><module>indoorhelper</module></modules>
555 </profile>
556 <profile>
557 <id>kartverketimport</id>
558 <activation><file><exists>kartverketimport/pom.xml</exists></file></activation>
559 <modules><module>kartverketimport</module></modules>
560 </profile>
561 <profile>
562 <id>Mapillary</id>
563 <activation><file><exists>Mapillary/pom.xml</exists></file><jdk>[17,]</jdk></activation>
564 <modules><module>Mapillary</module></modules>
565 </profile>
566 <profile>
567 <id>MapRoulette</id>
568 <activation><file><exists>MapRoulette/pom.xml</exists></file><jdk>[17,]</jdk></activation>
569 <modules><module>MapRoulette</module></modules>
570 </profile>
571 <profile>
572 <id>markseen</id>
573 <activation><file><exists>markseen/pom.xml</exists></file></activation>
574 <modules><module>markseen</module></modules>
575 </profile>
576 <profile>
577 <id>osm-obj-info</id>
578 <activation><file><exists>osm-obj-info/pom.xml</exists></file></activation>
579 <modules><module>osm-obj-info</module></modules>
580 </profile>
581 <profile>
582 <id>PicLayer</id>
583 <activation><file><exists>PicLayer/pom.xml</exists></file></activation>
584 <modules><module>PicLayer</module></modules>
585 </profile>
586 <profile>
587 <id>pt_assistant</id>
588 <activation><file><exists>pt_assistant/pom.xml</exists></file><jdk>[17,]</jdk></activation>
589 <modules><module>pt_assistant</module></modules>
590 </profile>
591 <profile>
592 <id>rex</id>
593 <activation><file><exists>rex/pom.xml</exists></file></activation>
594 <modules><module>rex</module></modules>
595 </profile>
596 <profile>
597 <id>ShapeTools</id>
598 <activation><file><exists>ShapeTools/pom.xml</exists></file></activation>
599 <modules><module>ShapeTools</module></modules>
600 </profile>
601 <profile>
602 <id>todo</id>
603 <activation><file><exists>todo/pom.xml</exists></file><jdk>[17,]</jdk></activation>
604 <modules><module>todo</module></modules>
605 </profile>
606 <profile>
607 <id>turnlanes-tagging</id>
608 <activation><file><exists>turnlanes-tagging/pom.xml</exists></file></activation>
609 <modules><module>turnlanes-tagging</module></modules>
610 </profile>
611 <profile>
612 <id>validations_testing</id>
613 <activation><file><exists>validations_testing/pom.xml</exists></file></activation>
614 <modules><module>validations_testing</module></modules>
615 </profile>
616 <profile>
617 <id>wikipedia</id>
618 <activation><file><exists>wikipedia/pom.xml</exists></file></activation>
619 <modules><module>wikipedia</module></modules>
620 </profile>
621 </profiles>
622</project>
Note: See TracBrowser for help on using the repository browser.