File tree Expand file tree Collapse file tree 2 files changed +7
-2
lines changed
java-compiler-testing/src/main/java/io/github/ascopes/jct/workspaces/impl Expand file tree Collapse file tree 2 files changed +7
-2
lines changed Original file line number Diff line number Diff line change 2222import java .nio .file .FileSystem ;
2323import java .nio .file .Files ;
2424import java .nio .file .Path ;
25+ import java .util .UUID ;
2526import org .apiguardian .api .API ;
2627import org .apiguardian .api .API .Status ;
2728import org .slf4j .Logger ;
@@ -87,8 +88,11 @@ public static RamDirectoryImpl newRamDirectory(String name) {
8788
8889 assertValidRootName (name );
8990
90- var fileSystem = MemoryFileSystemProvider .getInstance ().createFileSystem (name );
91- var path = fileSystem .getRootDirectories ().iterator ().next ().resolve (name );
91+ // MemoryFileSystem needs unique FS names to work correctly, so use a UUID to enforce this.
92+
93+ var uniqueName = name + ":" + UUID .randomUUID ();
94+ var fileSystem = MemoryFileSystemProvider .getInstance ().createFileSystem (uniqueName );
95+ var path = fileSystem .getRootDirectories ().iterator ().next ().resolve (uniqueName );
9296
9397 // Ensure the base directory exists.
9498 uncheckedIo (() -> Files .createDirectories (path ));
Original file line number Diff line number Diff line change 2929import java .util .HashMap ;
3030import java .util .List ;
3131import java .util .Map ;
32+ import java .util .UUID ;
3233import javax .tools .JavaFileManager .Location ;
3334import org .apiguardian .api .API ;
3435import org .apiguardian .api .API .Status ;
You can’t perform that action at this time.
0 commit comments