Skip to content

Edge case in incremental compile #2155

@danchia

Description

@danchia

Download https://s3.amazonaws.com/coursera-misc/danchia/broken.tgz

Steps to reproduce in sample case

$ sbt
> project foo
> run

in bar/build.sbt
comment out

libraryDependencies += "com.typesafe.scala-logging" %% "scala-logging-slf4j" % "2.1.2"

and uncomment

libraryDependencies += "com.typesafe.scala-logging" %% "scala-logging" % "3.1.0"

in bar/src/main/scala/org/example/bar.scala
uncomment out

import com.typesafe.scalalogging.Logger

and comment

import com.typesafe.scalalogging.slf4j.Logger

now back in sbt

> reload
> run

problem

java.lang.AbstractMethodError: org.coursera.Foo.org$coursera$Bar$_setter_$org$coursera$Bar$$logger_$eq(Lcom/typesafe/scalalogging/Logger;)V
at org.coursera.Bar$class.$init$(bar.scala:8)
at org.coursera.Foo.<init>(foo.scala:3)
at org.coursera.Main$.main(foo.scala:10)
at org.coursera.Main.main(foo.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions