0

sbt 版本:1.2.1 scala 版本:2.12.6

我可以将 ensime 与 emacs 连接,但是一旦运行 CC CB c (ensime-sbt-do-compile) 然后遇到以下错误

   [ERROR] Failed to construct terminal; falling back to unsupported
java.lang.IllegalArgumentException: Invalid terminal type: 
    at jline.TerminalFactory.create(TerminalFactory.java:103)
    at jline.TerminalFactory.get(TerminalFactory.java:180)
    at jline.TerminalFactory.get(TerminalFactory.java:186)
    at jline.console.ConsoleReader.<init>(ConsoleReader.java:244)
    at jline.console.ConsoleReader.<init>(ConsoleReader.java:236)
    at jline.console.ConsoleReader.<init>(ConsoleReader.java:228)
    at sbt.internal.util.JLine$.$anonfun$createReader$1(LineReader.scala:137)
    at sbt.internal.util.JLine$.$anonfun$usingTerminal$1(LineReader.scala:128)
    at sbt.internal.util.JLine$.withTerminal(LineReader.scala:118)
    at sbt.internal.util.JLine$.usingTerminal(LineReader.scala:126)
    at sbt.internal.util.JLine$.createReader(LineReader.scala:136)
    at sbt.internal.util.SimpleReader.<init>(LineReader.scala:213)
    at sbt.internal.util.SimpleReader$.<init>(LineReader.scala:216)
    at sbt.internal.util.SimpleReader$.<clinit>(LineReader.scala)
    at sbt.Import.$init$(Import.scala:179)
    at sbt.package$.<init>(package.scala:11)
    at sbt.package$.<clinit>(package.scala)
    at $0c1c090d12f59c194554$.$sbtdef(C:\Users\xxx\.sbt\1.0\plugins\build.sbt:1)
    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:498)
    at sbt.compiler.Eval$.getValue(Eval.scala:578)
    at sbt.compiler.Eval.$anonfun$eval$1(Eval.scala:129)
    at sbt.internal.EvaluateConfigurations$.$anonfun$evaluateDslEntry$1(EvaluateConfigurations.scala:249)
    at sbt.internal.EvaluateConfigurations$.$anonfun$evaluateSbtFile$6(EvaluateConfigurations.scala:172)
    at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:234)
    at scala.collection.immutable.List.foreach(List.scala:389)
    at scala.collection.TraversableLike.map(TraversableLike.scala:234)
    at scala.collection.TraversableLike.map$(TraversableLike.scala:227)
    at scala.collection.immutable.List.map(List.scala:295)
    at sbt.internal.EvaluateConfigurations$.$anonfun$evaluateSbtFile$4(EvaluateConfigurations.scala:172)
    at sbt.internal.Load$.loadSettingsFile$1(Load.scala:1137)
    at sbt.internal.Load$.$anonfun$discoverProjects$2(Load.scala:1144)
    at scala.collection.MapLike.getOrElse(MapLike.scala:128)
    at scala.collection.MapLike.getOrElse$(MapLike.scala:126)
    at scala.collection.AbstractMap.getOrElse(Map.scala:59)
    at sbt.internal.Load$.memoLoadSettingsFile$1(Load.scala:1143)
    at sbt.internal.Load$.$anonfun$discoverProjects$4(Load.scala:1151)
    at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:234)
    at scala.collection.immutable.List.foreach(List.scala:389)
    at scala.collection.TraversableLike.map(TraversableLike.scala:234)
    at scala.collection.TraversableLike.map$(TraversableLike.scala:227)
    at scala.collection.immutable.List.map(List.scala:295)
    at sbt.internal.Load$.loadFiles$1(Load.scala:1151)
    at sbt.internal.Load$.discoverProjects(Load.scala:1165)
    at sbt.internal.Load$.discover$1(Load.scala:862)
    at sbt.internal.Load$.loadTransitive(Load.scala:937)
    at sbt.internal.Load$.loadProjects$1(Load.scala:726)
    at sbt.internal.Load$.$anonfun$loadUnit$11(Load.scala:729)
    at sbt.internal.Load$.timed(Load.scala:1395)
    at sbt.internal.Load$.$anonfun$loadUnit$1(Load.scala:729)
    at sbt.internal.Load$.timed(Load.scala:1395)
    at sbt.internal.Load$.loadUnit(Load.scala:688)
    at sbt.internal.Load$.$anonfun$builtinLoader$4(Load.scala:484)
    at sbt.internal.BuildLoader$.$anonfun$componentLoader$5(BuildLoader.scala:176)
    at sbt.internal.BuildLoader.apply(BuildLoader.scala:241)
    at sbt.internal.Load$.loadURI$1(Load.scala:546)
    at sbt.internal.Load$.loadAll(Load.scala:562)
    at sbt.internal.Load$.loadURI(Load.scala:492)
    at sbt.internal.Load$.load(Load.scala:471)
    at sbt.internal.Load$.$anonfun$apply$1(Load.scala:251)
    at sbt.internal.Load$.timed(Load.scala:1395)
    at sbt.internal.Load$.apply(Load.scala:251)
    at sbt.internal.GlobalPlugin$.build(GlobalPlugin.scala:59)
    at sbt.internal.GlobalPlugin$.load(GlobalPlugin.scala:64)
    at sbt.internal.Load$.loadGlobal(Load.scala:193)
    at sbt.internal.Load$.defaultWithGlobal(Load.scala:150)
    at sbt.internal.Load$.$anonfun$defaultLoad$1(Load.scala:64)
    at sbt.internal.Load$.timed(Load.scala:1395)
    at sbt.internal.Load$.defaultLoad(Load.scala:60)
    at sbt.BuiltinCommands$.liftedTree1$1(Main.scala:829)
    at sbt.BuiltinCommands$.doLoadProject(Main.scala:829)
    at sbt.BuiltinCommands$.$anonfun$loadProjectImpl$2(Main.scala:800)
    at sbt.Command$.$anonfun$applyEffect$4(Command.scala:142)
    at sbt.Command$.$anonfun$applyEffect$2(Command.scala:137)
    at sbt.Command$.process(Command.scala:181)
    at sbt.MainLoop$.processCommand(MainLoop.scala:151)
    at sbt.MainLoop$.$anonfun$next$2(MainLoop.scala:139)
    at sbt.State$$anon$1.runCmd$1(State.scala:246)
    at sbt.State$$anon$1.process(State.scala:250)
    at sbt.MainLoop$.$anonfun$next$1(MainLoop.scala:139)
    at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
    at sbt.MainLoop$.next(MainLoop.scala:139)
    at sbt.MainLoop$.run(MainLoop.scala:132)
    at sbt.MainLoop$.$anonfun$runWithNewLog$1(MainLoop.scala:110)
    at sbt.io.Using.apply(Using.scala:22)
    at sbt.MainLoop$.runWithNewLog(MainLoop.scala:104)
    at sbt.MainLoop$.runAndClearLast(MainLoop.scala:59)
    at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:44)
    at sbt.MainLoop$.runLogged(MainLoop.scala:35)
    at sbt.StandardMain$.runManaged(Main.scala:138)
    at sbt.xMain.run(Main.scala:89)
    at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
    at xsbt.boot.Launch$.withContextLoader(Launch.scala:128)
    at xsbt.boot.Launch$.run(Launch.scala:109)
    at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:35)
    at xsbt.boot.Launch$.launch(Launch.scala:117)
    at xsbt.boot.Launch$.apply(Launch.scala:18)
    at xsbt.boot.Boot$.runImpl(Boot.scala:56)
    at xsbt.boot.Boot$.main(Boot.scala:18)
    at xsbt.boot.Boot.main(Boot.scala)
Caused by: java.lang.ClassNotFoundException: 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at jline.TerminalFactory.create(TerminalFactory.java:100)
    ... 101 more

[info] Loading settings for project global-plugins from build.sbt,plugins.sbt ...
[info] Loading global plugins from C:\Users\xxx\.sbt\1.0\plugins
[info] Loading project definition from C:\Users\xxx\ScalaProjects\minedemo\hello\project
[info] Loading settings for project hello from build.sbt ...
[info] Set current project to hello-world (in build file:/C:/Users/xxx/ScalaProjects/minedemo/hello/)
[error] Not a valid command: none (similar: new)
[error] Not a valid project ID: none
[error] Expected ':'
[error] Not a valid key: none (similar: runner, name, console)
[error] none
[error]     ^
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0

我不确定是 emacs 配置问题还是 sbt 配置问题,我是 scala 和 emacs 的新手,非常感谢您的帮助,它耽误了我很多时间

4

1 回答 1

0

从 emacs-sbt-mode 找到解决方案

https://github.com/ensime/emacs-sbt-mode/issues/120

(setq sbt:program-options '()) 

为我工作:

  • 操作系统:Windows 10 x64 版
  • SBT:1.2.8
  • JDK:1.8.0_211
  • Emacs:2019-06-14 的 26.2.90(内部版本 2,x86_64-w64-mingw32)
  • sbt 模式:2.0.0
  • 缩放模式:1.0.0
  • 恩西姆:2.0.2
于 2019-06-24T02:07:52.587 回答