diff --git a/plugins/jts/build.xml b/plugins/jts/build.xml
index 74fc946c5..1ed015e05 100644
--- a/plugins/jts/build.xml
+++ b/plugins/jts/build.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<project name="jts" default="dist" basedir=".">
+<project name="jts" default="dist" basedir="." xmlns:ivy="antlib:org.apache.ivy.ant">
     <!-- enter the SVN commit message -->
     <property name="commit.message" value="Commit message"/>
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
@@ -17,4 +17,8 @@
 
     <!-- ** include targets that all plugins have in common ** -->
     <import file="../build-common.xml"/>
+
+    <target name="pre-compile" depends="fetch_dependencies">
+        <!-- include fetch_dependencies task -->
+    </target>
 </project>
diff --git a/plugins/jts/ivy.xml b/plugins/jts/ivy.xml
new file mode 100644
index 000000000..5a5a8382f
--- /dev/null
+++ b/plugins/jts/ivy.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- License: GPL. For details, see LICENSE file. -->
+<ivy-module version="2.0">
+    <info organisation="org.openstreetmap.josm.plugins" module="jts"/>
+    <dependencies>
+        <dependency org="org.locationtech.jts" name="jts-core" rev="1.16.1" />
+        <dependency org="org.locationtech.jts.io" name="jts-io-common" rev="1.16.1" />
+        <!-- jts-io-common has junit as a test dependency -->
+        <exclude org="junit" />
+    </dependencies>
+</ivy-module>
diff --git a/plugins/jts/lib/jts-core-1.16.1-javadoc.jar b/plugins/jts/lib/jts-core-1.16.1-javadoc.jar
deleted file mode 100644
index 1150781be..000000000
Binary files a/plugins/jts/lib/jts-core-1.16.1-javadoc.jar and /dev/null differ
diff --git a/plugins/jts/lib/jts-core-1.16.1-sources.jar b/plugins/jts/lib/jts-core-1.16.1-sources.jar
deleted file mode 100644
index c165e9038..000000000
Binary files a/plugins/jts/lib/jts-core-1.16.1-sources.jar and /dev/null differ
diff --git a/plugins/jts/lib/jts-core-1.16.1.jar b/plugins/jts/lib/jts-core-1.16.1.jar
deleted file mode 100644
index 27348f43f..000000000
Binary files a/plugins/jts/lib/jts-core-1.16.1.jar and /dev/null differ
diff --git a/plugins/jts/lib/jts-io-common-1.16.1-javadoc.jar b/plugins/jts/lib/jts-io-common-1.16.1-javadoc.jar
deleted file mode 100644
index ac1e43347..000000000
Binary files a/plugins/jts/lib/jts-io-common-1.16.1-javadoc.jar and /dev/null differ
diff --git a/plugins/jts/lib/jts-io-common-1.16.1-sources.jar b/plugins/jts/lib/jts-io-common-1.16.1-sources.jar
deleted file mode 100644
index 66149e7ab..000000000
Binary files a/plugins/jts/lib/jts-io-common-1.16.1-sources.jar and /dev/null differ
diff --git a/plugins/jts/lib/jts-io-common-1.16.1.jar b/plugins/jts/lib/jts-io-common-1.16.1.jar
deleted file mode 100644
index d048c190a..000000000
Binary files a/plugins/jts/lib/jts-io-common-1.16.1.jar and /dev/null differ
