LSP и металлы не работают на scala в Emacs - PullRequest
0 голосов
/ 10 января 2020

Я использую metal-emacs с lsp-mode в emacs. Раньше он работал большую часть времени, но в последнее время он никогда не работает.

Буферы *metals* и *metals:stderr* пусты. Буфер *lsp-log* представляет собой смесь сообщений:

time: compiled someProject in 4.58s
'dev-test' failed to compile.
Command "metals-emacs" is present on the path.
Found the following clients for /Users/me/projects/src/main/scala/com/example/Foo.scala: (server-id metals, priority -1)
The following clients were selected based on priority: (server-id metals, priority -1)

Итак, он находит сервер и подключается к нему.

Я использую sbt для сборки и часто оставляю его, делая ~run или ~test.

Запуск M-x lsp-metals-doctor-run отвечает с ошибкой: «lsp - send-request-asyn c: Ни одно рабочее пространство не может обработать workspace / executeCommand».

У меня есть сложный .emacs, который загружает много вещей через бочку и поддон. Похоже, это соответствующие настройки lsp:

(custom-set-variables
 '(lsp-file-watch-threshold 1200)
 '(lsp-prefer-flymake nil)
'(package-selected-packages
   (quote company-lsp lsp-mode lsp-ui ...)
 ...)

;; lsp configuration
(use-package lsp-mode
  ;; Optional - enable lsp-scala automatically in scala files
  :hook (scala-mode . lsp))

Какой хороший способ попытаться выяснить, где происходит сбой?

Конец .metals/metals.log равен

$ tail -30 .metals/metals.log
INFO  time: compiled dataCollector in 0.61s
ERROR 'dataCollector' failed to compile.
INFO  compiling datacollector (7 scala sources)
INFO  time: compiled dataCollector in 0.43s
ERROR 'dataCollector' failed to compile.
INFO  compiling datacollector (7 scala sources)
INFO  time: compiled dataCollector in 0.67s
ERROR 'ta1controller' failed to compile.
ERROR 'figaro' failed to compile.
ERROR 'simConverter' failed to compile.
ERROR 'dataCollector' failed to compile.
ERROR 'indicators' failed to compile.
INFO  compiling datacollector (7 scala sources)
INFO  time: compiled dataCollector in 0.64s
ERROR 'infoGainTiming' failed to compile.
ERROR 'executor' failed to compile.
ERROR 'figaro' failed to compile.
ERROR 'simConverter' failed to compile.
ERROR 'dataCollector' failed to compile.
ERROR 'intentGraphMerger' failed to compile.
ERROR 'indicators' failed to compile.
INFO  compiling datacollector (7 scala sources)
INFO  time: compiled dataCollector in 0.58s
ERROR 'figaro' failed to compile.
ERROR 'simConverter' failed to compile.
ERROR 'dataCollector' failed to compile.
INFO  compiling datacollector (7 scala sources)
INFO  time: compiled dataCollector in 0.47s
ERROR 'indicators' failed to compile.
ERROR 'dataCollector' failed to compile.

В sbt dataCollector компилируется просто отлично.

...