Index: applications/editors/josm/plugins/geotools/build.xml
===================================================================
--- applications/editors/josm/plugins/geotools/build.xml	(revision 36068)
+++ applications/editors/josm/plugins/geotools/build.xml	(revision 36176)
@@ -13,4 +13,5 @@
     <property name="plugin.requires" value="apache-commons;ejml;jackson;jaxb;jts"/>
     <property name="plugin.stage" value="20"/>
+    <property name="plugin.minimum.java.version" value="11"/>
 
     <!-- ** include targets that all plugins have in common ** -->
Index: applications/editors/josm/plugins/geotools/ivy.xml
===================================================================
--- applications/editors/josm/plugins/geotools/ivy.xml	(revision 36068)
+++ applications/editors/josm/plugins/geotools/ivy.xml	(revision 36176)
@@ -11,5 +11,5 @@
         <dependency org="org.geotools" name="gt-main" rev="${gt.version}" conf="default->default"/>
         <dependency org="org.geotools" name="gt-metadata" rev="${gt.version}" conf="default->default"/>
-        <dependency org="org.geotools" name="gt-opengis" rev="${gt.version}" conf="default->default"/>
+        <dependency org="org.geotools" name="gt-api" rev="${gt.version}" conf="default->default"/>
         <dependency org="org.geotools" name="gt-referencing" rev="${gt.version}" conf="default->default"/>
         <dependency org="org.geotools" name="gt-shapefile" rev="${gt.version}" conf="default->default"/>
Index: applications/editors/josm/plugins/geotools/ivy_settings.xml
===================================================================
--- applications/editors/josm/plugins/geotools/ivy_settings.xml	(revision 36068)
+++ applications/editors/josm/plugins/geotools/ivy_settings.xml	(revision 36176)
@@ -2,5 +2,6 @@
 <ivysettings>
   <!-- When geotools is updated, run `ant merge-geotools-services` -->
-  <property name="gt.version" value="28.2"/>
+  <property name="gt.version" value="30.0"/>
+  <include file="${josm.ivysettings}" optional="true" /> <!-- optional for IDEs -->
   <settings defaultResolver="ordered-resolvers"/>
   <resolvers>
Index: applications/editors/josm/plugins/geotools/src/org/openstreetmap/josm/plugins/geotools/GeoToolsPlugin.java
===================================================================
--- applications/editors/josm/plugins/geotools/src/org/openstreetmap/josm/plugins/geotools/GeoToolsPlugin.java	(revision 36068)
+++ applications/editors/josm/plugins/geotools/src/org/openstreetmap/josm/plugins/geotools/GeoToolsPlugin.java	(revision 36176)
@@ -4,4 +4,5 @@
 import java.io.IOException;
 import java.io.InputStream;
+import java.util.Collection;
 import java.util.Iterator;
 import java.util.ServiceLoader;
@@ -15,6 +16,6 @@
 import org.geotools.image.ImageWorker;
 import org.geotools.referencing.CRS;
-import org.opengis.referencing.FactoryException;
-import org.opengis.referencing.NoSuchAuthorityCodeException;
+import org.geotools.api.referencing.FactoryException;
+import org.geotools.api.referencing.NoSuchAuthorityCodeException;
 import org.openstreetmap.josm.plugins.Plugin;
 import org.openstreetmap.josm.plugins.PluginInformation;
@@ -102,10 +103,13 @@
 
     private static void checkEPSG() {
+        final Collection<String> codes = CRS.getSupportedCodes("EPSG");
+        if (codes.isEmpty() || !(codes.contains("4326") || codes.contains("EPSG:4326"))) {
         try {
-            CRS.decode("EPSG:4326");
-        } catch (NoSuchAuthorityCodeException e) {
-            Logging.error("geotools: error in EPSG database initialization. NoSuchAuthorityCodeException: "+e.getMessage());
-        } catch (FactoryException e) {
-            Logging.error("geotools: error in EPSG database initialization. FactoryException: "+e.getMessage());
+                CRS.decode("EPSG:4326");
+            } catch (NoSuchAuthorityCodeException e) {
+                Logging.error("geotools: error in EPSG database initialization. NoSuchAuthorityCodeException: " + e.getMessage());
+            } catch (FactoryException e) {
+                Logging.error("geotools: error in EPSG database initialization. FactoryException: " + e.getMessage());
+            }
         }
     }
