diff --git a/pom.xml b/pom.xml
index 3fbf76a..45e13d2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -306,7 +306,7 @@
1.18.44
- 1.9.0
+ 2.0.0
1.9.0
diff --git a/src/main/java/nbbrd/net/proxy/SystemProxySelector.java b/src/main/java/nbbrd/net/proxy/SystemProxySelector.java
index ef44d48..437791e 100644
--- a/src/main/java/nbbrd/net/proxy/SystemProxySelector.java
+++ b/src/main/java/nbbrd/net/proxy/SystemProxySelector.java
@@ -18,6 +18,12 @@
import internal.net.proxy.FailsafeSystemProxySpi;
import internal.net.proxy.SystemProxySpiLoader;
+import lombok.NonNull;
+import nbbrd.design.ThreadSafe;
+import nbbrd.service.Quantifier;
+import nbbrd.service.ServiceDefinition;
+import org.jspecify.annotations.Nullable;
+
import java.io.IOException;
import java.net.Proxy;
import java.net.ProxySelector;
@@ -28,11 +34,7 @@
import java.util.Objects;
import java.util.function.UnaryOperator;
-import nbbrd.design.ThreadSafe;
-import nbbrd.service.Quantifier;
-import nbbrd.service.ServiceDefinition;
-import lombok.NonNull;
-import org.jspecify.annotations.Nullable;
+import static java.util.stream.Collectors.toList;
/**
*
@@ -45,7 +47,7 @@ public final class SystemProxySelector extends ProxySelector {
@NonNull
public static SystemProxySelector ofServiceLoader() {
return builder()
- .providers(new SystemProxySpiLoader().get())
+ .providers(SystemProxySpiLoader.load().stream().map(FailsafeSystemProxySpi::wrap).collect(toList()))
.systemProperties(System::getProperty)
.fallback(ProxySelector.getDefault())
.build();
@@ -96,7 +98,6 @@ private boolean hasProperty(String property) {
@ThreadSafe
@ServiceDefinition(
quantifier = Quantifier.MULTIPLE,
- wrapper = FailsafeSystemProxySpi.class,
loaderName = "internal.net.proxy.SystemProxySpiLoader")
public interface Spi {