Skip to content

Windows ARM issue #7865

@arjenw

Description

@arjenw

steps

When starting SBT I get the following stack trace:

java.lang.UnsatisfiedLinkError: 'long org.fusesource.jansi.internal.Kernel32.GetStdHandle(int)'
        at org.fusesource.jansi.internal.Kernel32.GetStdHandle(Native Method)
        at sbt.internal.util.WindowsSupport$.getConsoleMode(WindowsInputStream.scala:21)
        at sbt.internal.util.JLine3$.setEnableProcessInput(JLine3.scala:208)
        at sbt.internal.util.JLine3$.enterRawMode(JLine3.scala:218)
        at sbt.internal.util.Terminal$ConsoleTerminal.enterRawMode(Terminal.scala:925)
        at sbt.internal.util.Terminal$ConsoleTerminal.<init>(Terminal.scala:878)
        at sbt.internal.util.Terminal$.newConsoleTerminal(Terminal.scala:816)
        at sbt.internal.util.Terminal$.withStreams(Terminal.scala:396)
        at sbt.xMain$.withStreams$1(Main.scala:89)
        at sbt.xMain$.run(Main.scala:124)
        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at sbt.internal.XMainConfiguration.run(XMainConfiguration.java:59)
        at sbt.xMain.run(Main.scala:48)
        at xsbt.boot.Launch$.$anonfun$run$1(Launch.scala:149)
        at xsbt.boot.Launch$.withContextLoader(Launch.scala:176)
        at xsbt.boot.Launch$.run(Launch.scala:149)
        at xsbt.boot.Launch$.$anonfun$apply$1(Launch.scala:44)
        at xsbt.boot.Launch$.launch(Launch.scala:159)
        at xsbt.boot.Launch$.apply(Launch.scala:44)
        at xsbt.boot.Launch$.apply(Launch.scala:21)
        at xsbt.boot.Boot$.runImpl(Boot.scala:78)
        at xsbt.boot.Boot$.run(Boot.scala:73)
        at xsbt.boot.Boot$.main(Boot.scala:21)
        at xsbt.boot.Boot.main(Boot.scala)
[error] [launcher] error during sbt launcher: java.lang.UnsatisfiedLinkError: 'long org.fusesource.jansi.internal.Kernel32.GetStdHandle(int)'

System:

  • SBT 1.10.5
  • Windows 11 (ARM version)
  • Running on Parallels
  • Running on Apple Mac M1 (arm64)

problem

See above.

Jansi-2.4.1 claims to have support for Windows ARM. However, the JAR SBT supplies (in folder ~\.sbt\boot\scala-2.12.20\org.scala-sbt\sbt\1.10.5) is version 2.4.0 (which is weird as SBT's project/Dependencies.scala defines jansi version 2.4.1).

Workaround is to start SBT using:

sbt -Djline.terminal=none

expectation

SBT should start successfully of course.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions