Повторно запустить с -feature для деталей
Когда я компилирую scala в консоль воспроизведения, я получил следующее:
[warn] there were 1 feature warning(s); re-run with -feature for details
[warn] one warning found
Я думал, что это означает compile -feature
, но я получил это:
[error] Expected ID character
[error] Not a valid command: compile (similar: completions)
[error] Expected project ID
[error] Expected configuration
[error] Expected ':' (if selecting a configuration)
[error] Expected key
[error] Expected '::'
[error] Expected end of input.
[error] compile -feature
[error]
Затем я запустил play -feature
, я получил следующее:
[warn] The `-` command is deprecated in favor of `onFailure` and will be removed in 0.14.0
И играйте в игру.
Итак, как мне это сделать?
Ответы
Ответ 1
Вы должны добавить
scalacOptions += "-feature"
на ваш build.sbt
и выполните reload
, если ваша консоль sbt запущена (или перезапустите ее).
В качестве альтернативы, если вы хотите установить его только для одного сеанса, находясь в консоли sbt.
set scalacOptions += "-feature"
Вы можете написать, этот параметр применяется немедленно, нет необходимости перезагружать или перезагружать консоль sbt.
Ответ 2
Просто для завершения, если вы находитесь в play/sbt repl, вы можете изменить значение scalacOptions
только для сеанса, например:
![enter image description here]()
Ответ 3
В моем случае я нашел источник моей ошибки в файле /usr/local/etc/sbtopts. В конце была добавлена следующая строка, которую я установил.
-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled XX:MaxPermSize=256M
Всякий раз, когда sbt запускает вышеприведенную строку, передается как аргументы, вызывающие указанную выше ошибку. Поскольку это варианты java для ее решения, мы можем добавить -J перед указанной строкой или полностью удалить строку. Это избавляет от -feature.
Ответ 4
Флаг должен быть добавлен в параметры Scala компилятора. Вы можете сделать это, добавив следующую строку в ваш файл build.sbt
:
scalacOptions ++= Seq("-feature")