diff --git a/src/main/java/rife/bld/extension/dokka/SourceSet.java b/src/main/java/rife/bld/extension/dokka/SourceSet.java
index 4062a1e..4e31c5b 100644
--- a/src/main/java/rife/bld/extension/dokka/SourceSet.java
+++ b/src/main/java/rife/bld/extension/dokka/SourceSet.java
@@ -24,7 +24,7 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentSkipListMap;
import java.util.stream.Collectors;
/**
@@ -33,15 +33,16 @@ import java.util.stream.Collectors;
* @author Erik C. Thauvin
* @since 1.0
*/
+@SuppressWarnings("PMD.UseConcurrentHashMap")
public class SourceSet {
private final Collection classpath_ = new ArrayList<>();
- private final Map dependentSourceSets_ = new ConcurrentHashMap<>();
+ private final Map dependentSourceSets_ = new ConcurrentSkipListMap<>();
private final Collection documentedVisibilities_ = new ArrayList<>();
- private final Map externalDocumentationLinks_ = new ConcurrentHashMap<>();
+ private final Map externalDocumentationLinks_ = new ConcurrentSkipListMap<>();
private final Collection includes_ = new ArrayList<>();
private final Collection perPackageOptions_ = new ArrayList<>();
private final Collection samples_ = new ArrayList<>();
- private final Map srcLinks_ = new ConcurrentHashMap<>();
+ private final Map srcLinks_ = new ConcurrentSkipListMap<>();
private final Collection src_ = new ArrayList<>();
private final Collection suppressedFiles_ = new ArrayList<>();
private AnalysisPlatform analysisPlatform_;
diff --git a/src/test/java/rife/bld/extension/dokka/SourceSetTest.java b/src/test/java/rife/bld/extension/dokka/SourceSetTest.java
index 971e603..bc3290e 100644
--- a/src/test/java/rife/bld/extension/dokka/SourceSetTest.java
+++ b/src/test/java/rife/bld/extension/dokka/SourceSetTest.java
@@ -171,7 +171,7 @@ class SourceSetTest {
var matches = List.of(
"-classpath", localPath(PATH_1, PATH_2),
"-dependentSourceSets", "set1/set2;set3/set4",
- "-externalDocumentationLinks", "link3^link4^^link1^link2",
+ "-externalDocumentationLinks", "link1^link2^^link3^link4",
"-perPackageOptions", OPTION_1 + ';' + OPTION_2,
"-samples", localPath(SAMPLES_1, SAMPLES_2, SAMPLES_3),
"-suppressedFiles", localPath(SUP_1, SUP_2, SUP_3)