プロジェクトの 1 つを scala 2.13.4 にアップグレードした後、次のエラーが発生します。
[error] java.lang.IllegalAccessError: Class 'scala.tools.nsc.transform.patmat.PatternExpansion$ExtractorAlignment' no access to: class 'scala.collection.immutable.LazyList$State'
[error] at java.base/java.lang.invoke.MethodHandle.sendResolveMethodHandle(MethodHandle.java:1237)
[error] at java.base/java.lang.invoke.MethodHandle.getCPMethodHandleAt(Native Method)
[error] at java.base/java.lang.invoke.MethodHandle.getAdditionalBsmArg(MethodHandle.java:935)
[error] at java.base/java.lang.invoke.MethodHandle.resolveInvokeDynamic(MethodHandle.java:1084)
[error] at scala.tools.nsc.transform.patmat.PatternExpansion$ExtractorAlignment.fromProductSelectors(PatternExpansion.scala:166)
(完全なスタックトレースはこちらhttps://gist.github.com/froth/f4819191644ef6ced0be682ad55f8fa0で、かなり長いものです)
私はコード ベースに何も変更を加えておらず、自分のプロジェクトで LazyList を積極的に使用していません。さらに複雑にするために:それは私のマシンで動作し、パイプラインで失敗します(同じJavaバージョン、同じsbtバージョン(sbt 1.4.4(AdoptOpenJDK Java 11.0.8))、すべてのキャッシュをクリアしました)。
これはマルチプロジェクト ビルドであり、最上位の build.sbt はhttps://gist.github.com/froth/516c4ea6f8bd98ed87e6a8cadaa117d1のようになり、サブプロジェクトでは次のようになります: https://gist.github.com/froth/03af73900724f47154a0b2477edb47ca
再現するのが難しく、さらに内部の依存関係がある内部プロジェクトであるため、これが私が提供できるすべてです。
私の質問は、何が原因で何ができるか知っている人はいますか? または、誰かがこれをさらにデバッグする方法や、何がうまくいかないかについてより多くの情報を取得しようとするアイデアを持っている場合.