diff --git a/composite-builds/build-deps/java-compiler/src/main/java/com/itsaky/androidide/zipfs2/ZipFileSystem.java b/composite-builds/build-deps/java-compiler/src/main/java/com/itsaky/androidide/zipfs2/ZipFileSystem.java index 8fbde8acd4..2912ec30e0 100644 --- a/composite-builds/build-deps/java-compiler/src/main/java/com/itsaky/androidide/zipfs2/ZipFileSystem.java +++ b/composite-builds/build-deps/java-compiler/src/main/java/com/itsaky/androidide/zipfs2/ZipFileSystem.java @@ -1076,7 +1076,10 @@ final String getString(byte[] name) { @SuppressWarnings("deprecation") protected void finalize() throws IOException { - close(); + try { + close(); + } catch (IOException ignored) { + } } // Reads len bytes of data from the specified offset into buf. diff --git a/subprojects/javac-services/src/main/java/com/itsaky/androidide/javac/services/fs/CachedJarFileSystem.kt b/subprojects/javac-services/src/main/java/com/itsaky/androidide/javac/services/fs/CachedJarFileSystem.kt index 4a09dfe2e5..936865e64b 100644 --- a/subprojects/javac-services/src/main/java/com/itsaky/androidide/javac/services/fs/CachedJarFileSystem.kt +++ b/subprojects/javac-services/src/main/java/com/itsaky/androidide/javac/services/fs/CachedJarFileSystem.kt @@ -21,6 +21,7 @@ import com.itsaky.androidide.zipfs2.ZipFileSystem import com.itsaky.androidide.zipfs2.ZipFileSystemProvider import jdkx.lang.model.SourceVersion import openjdk.tools.javac.file.RelativePath.RelativeDirectory +import org.slf4j.LoggerFactory import java.io.IOException import java.nio.file.Path @@ -34,7 +35,11 @@ class CachedJarFileSystem( zfpath: Path?, env: MutableMap? ) : ZipFileSystem(provider, zfpath, env) { - + + companion object { + private val log = LoggerFactory.getLogger(CachedJarFileSystem::class.java) + } + internal val packages = mutableMapOf() override fun close() { @@ -42,9 +47,12 @@ class CachedJarFileSystem( // This is called manually by the Java LSP } - @Throws(IOException::class) fun doClose() { - super.close() + try { + super.close() + } catch (e: IOException) { + log.warn("IOException during CachedJarFileSystem close", e) + } } fun storeJARPackageDir(dir: Path?): Boolean {