From 396205071b65a302b9cf9d90bd2d2c2783010be8 Mon Sep 17 00:00:00 2001 From: Adrien Piquerez Date: Wed, 7 Aug 2024 15:17:08 +0200 Subject: [PATCH] Fix isLibraryChanged --- .../scala/sbt/internal/inc/IncrementalCommon.scala | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/internal/zinc-core/src/main/scala/sbt/internal/inc/IncrementalCommon.scala b/internal/zinc-core/src/main/scala/sbt/internal/inc/IncrementalCommon.scala index fe6f97edb..492b0e63f 100644 --- a/internal/zinc-core/src/main/scala/sbt/internal/inc/IncrementalCommon.scala +++ b/internal/zinc-core/src/main/scala/sbt/internal/inc/IncrementalCommon.scala @@ -786,12 +786,11 @@ object IncrementalCommon { def isLibraryChanged(file: VirtualFileRef): Boolean = { def compareOriginClassFile(className: String, classpathEntry: VirtualFileRef): Boolean = { - if ( - classpathEntry.id.endsWith(".jar") && - (converter.toPath(classpathEntry).toString != converter.toPath(file).toString) - ) - invalidateBinary(s"${className} is now provided by ${classpathEntry}") - else compareStamps(file, classpathEntry) + if (classpathEntry.id.endsWith(".jar")) compareStamps(file, classpathEntry) + else { + val resolved = Locate.classFile(converter.toPath(classpathEntry), className) + compareStamps(file, converter.toVirtualFile(resolved)) + } } val classNames = previousRelations.libraryClassNames(file)