source: osm/applications/editors/josm/plugins/geotools/build.xml@ 35959

Last change on this file since 35959 was 35959, checked in by taylor.smock, 2 years ago

geotools: Remove jackson.jar from compile path

This is needed since having jackson in the compile path has issues. See #21995.

This is in its own commit to make it easier to revert in the future, when
Jackson doesn't break jar creation.

  • Property svn:mime-type set to text/xml
File size: 4.4 KB
Line 
1<?xml version="1.0" encoding="utf-8"?>
2 <project name="geotools" default="dist" basedir="." xmlns:ivy="antlib:org.apache.ivy.ant">
3 <!-- enter the SVN commit message -->
4 <property name="commit.message" value="Commit message"/>
5 <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
6 <property name="plugin.main.version" value="10899"/>
7
8 <property name="plugin.author" value="Don-vip"/>
9 <property name="plugin.class" value="org.openstreetmap.josm.plugins.geotools.GeoToolsPlugin"/>
10 <property name="plugin.description" value="Provides parts of the GeoTools library for other JOSM plugins. Not meant to be installed directly by users, but rather as a dependency for other plugins."/>
11 <property name="plugin.icon" value="images/compass.png"/>
12 <property name="plugin.canloadatruntime" value="true"/>
13 <property name="plugin.requires" value="apache-commons;ejml;jackson;jaxb;jts"/>
14 <property name="plugin.stage" value="20"/>
15
16 <!-- ** include targets that all plugins have in common ** -->
17 <import file="../build-common.xml"/>
18
19 <target name="pre-compile" depends="fetch_dependencies">
20 <!-- include fetch_dependencies task -->
21 </target>
22
23 <fileset id="plugin.requires.jars" dir="${plugin.dist.dir}">
24 <include name="apache-commons.jar"/>
25 <include name="ejml.jar"/>
26 <include name="jaxb.jar"/>
27 <include name="jts.jar"/>
28 <!-- jackson causes issues if it is on the compile-time path. Since we don't actually use jackson in our code, we can just not have it in the requires.jars array. -->
29 <!--<include name="jackson.jar"/>-->
30 </fileset>
31
32 <target name="merge-geotools-services" depends="fetch_dependencies">
33 <taskdef resource="org/pescuma/mergeservices/antlib.xml" classpath="tools/merge-services.jar" />
34 <delete dir="jar/META-INF/services"/>
35 <merge-services dest="jar">
36 <fileset dir="lib">
37 <include name="**/*.jar" />
38 <exclude name="**/*-javadoc.jar" />
39 <exclude name="**/*-source.jar" />
40 </fileset>
41 </merge-services>
42 <echo>Check the updated files in jar/META-INF/services for lines where two
43 services got merged. Example:
44 org.geotools.coverage.util.FilterFunction_isCoverageorg.geotools.filter.AreaFunction
45 </echo>
46 </target>
47
48 <!--
49 **********************************************************
50 ** post-dist - replaces files from the generated jar
51 **********************************************************
52 -->
53 <target name="post-dist">
54 <move file="${plugin.jar}" todir="${plugin.build.dir}" />
55 <jar destfile="${plugin.jar}" filesetmanifest="merge" manifestencoding="UTF-8">
56 <fileset dir="jar"/>
57 <zipfileset src="${plugin.build.dir}/${ant.project.name}.jar">
58 <exclude name="*.class"/>
59 <exclude name="*.html"/>
60 <exclude name="META-INF/**/*"/>
61 <exclude name="javax/*.txt"/>
62 </zipfileset>
63 <zipfileset src="${plugin.build.dir}/${ant.project.name}.jar">
64 <include name="META-INF/MANIFEST.MF"/>
65 <include name="META-INF/javax.media.jai.registryFile.jai"/>
66 </zipfileset>
67 </jar>
68 <delete file="${plugin.build.dir}/${ant.project.name}.jar" />
69 </target>
70
71 <!--
72 **********************************************************
73 ** additional-manifest - add additional manifest entries
74 **********************************************************
75 -->
76 <target name="additional-manifest">
77 <manifest file="MANIFEST" mode="update">
78 <!-- JAI requires a vendor name for some of its deep internals,
79 see https://stackoverflow.com/a/18495658/2257172 -->
80 <attribute name="Specification-Title" value="JOSM GeoTools plugin"/>
81 <attribute name="Specification-Version" value="${gt.version}"/>
82 <attribute name="Specification-Vendor" value="JOSM developers" />
83 <attribute name="Implementation-Title" value="org.openstreetmap.josm.plugins.geotools" />
84 <attribute name="Implementation-Version" value="${gt.version}" />
85 <attribute name="Implementation-Vendor" value="JOSM developers"/>
86 </manifest>
87 </target>
88</project>
Note: See TracBrowser for help on using the repository browser.