Skip to content

Commit 1c497ea

Browse files
committed
Migrate to the use of LinkedHashSet to have consistent results across invocations
1 parent 7655aca commit 1c497ea

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

native-gradle-plugin/src/main/java/org/graalvm/buildtools/gradle/tasks/GenerateDynamicAccessMetadata.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@
6161
import java.nio.file.Path;
6262
import java.util.HashMap;
6363
import java.util.HashSet;
64+
import java.util.LinkedHashSet;
6465
import java.util.Map;
6566
import java.util.Optional;
6667
import java.util.Set;
@@ -129,7 +130,7 @@ public void generate() {
129130
* entry in the {@value #LIBRARY_AND_FRAMEWORK_LIST} file.
130131
*/
131132
private Set<String> readArtifacts(File inputFile) throws IOException {
132-
Set<String> artifacts = new HashSet<>();
133+
Set<String> artifacts = new LinkedHashSet<>();
133134
String content = Files.readString(inputFile.toPath());
134135
JSONArray jsonArray = new JSONArray(content);
135136
for (int i = 0; i < jsonArray.length(); i++) {
@@ -157,7 +158,7 @@ private Map<String, Set<String>> buildExportMap(Set<ResolvedDependency> dependen
157158
for (ResolvedArtifact artifact : dependency.getModuleArtifacts()) {
158159
File file = artifact.getFile();
159160
if (classpathEntries.contains(file)) {
160-
Set<String> files = new HashSet<>();
161+
Set<String> files = new LinkedHashSet<>();
161162
collectDependencies(dependency, files, classpathEntries);
162163
exportMap.put(file.getAbsolutePath(), files);
163164
}

native-maven-plugin/src/main/java/org/graalvm/buildtools/maven/NativeBuildDynamicAccessMetadataMojo.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
import java.io.IOException;
6767
import java.nio.file.Files;
6868
import java.util.HashMap;
69-
import java.util.HashSet;
69+
import java.util.LinkedHashSet;
7070
import java.util.List;
7171
import java.util.Map;
7272
import java.util.Set;
@@ -137,7 +137,7 @@ public void execute() throws MojoExecutionException, MojoFailureException {
137137
* entry in the {@value #LIBRARY_AND_FRAMEWORK_LIST} file.
138138
*/
139139
private Set<String> readArtifacts(File inputFile) throws IOException {
140-
Set<String> artifacts = new HashSet<>();
140+
Set<String> artifacts = new LinkedHashSet<>();
141141
String content = Files.readString(inputFile.toPath());
142142
JSONArray jsonArray = new JSONArray(content);
143143
for (int i = 0; i < jsonArray.length(); i++) {
@@ -187,7 +187,7 @@ private Set<String> collectDependencies(String coordinates, Map<String, String>
187187
PreorderNodeListGenerator nlg = new PreorderNodeListGenerator();
188188
node.accept(nlg);
189189

190-
Set<String> dependencies = new HashSet<>();
190+
Set<String> dependencies = new LinkedHashSet<>();
191191
nlg.getNodes().forEach(dependencyNode -> {
192192
if (dependencyNode.getDependency() != null) {
193193
DefaultArtifact dependencyArtifact = (DefaultArtifact) dependencyNode.getDependency().getArtifact();

0 commit comments

Comments
 (0)