Как получить дополнительную информацию о предупреждении о флаге «функция»?

При компиляции приложения с Play2 иногда на моем терминале появляется такое сообщение:

[info] Компиляция 1 исходного кода Scala в ~/target/scala-2.10/classes...
[warn] было 1 предупреждение о функции; повторно запустить с -feature для получения подробной информации
[предупреждение] найдено одно предупреждение
[успешно] Компилируется за 1 с

Как я могу получить больше информации об этих предупреждениях? Должно быть, это опция sbt, но я понятия не имею, где искать...


person i.am.michiel    schedule 20.03.2013    source источник
comment
Это действие SIP-18 docs.scala-lang.org /sips/pending/ чтобы просмотреть предупреждение, добавьте этот флаг в определение sbt: scalacOptions ++= Seq(... "-feature")   -  person om-nom-nom    schedule 21.03.2013
comment
Верно! Это сработало, спасибо! Не могли бы вы предложить ответ с этим?   -  person i.am.michiel    schedule 21.03.2013
comment
@ i.am.michiel Какой именно файл вы добавили в PlayFramework 2? Я пытаюсь добавить scalacOptions ++= Seq("-unchecked", "-deprecation","-feature") в Build.scala, но, похоже, это не имеет никакого эффекта.   -  person Umut Benzer    schedule 10.05.2013
comment
Добавил в build.sbt, но использую Play 2.3.x   -  person David Scruggs    schedule 04.06.2014
comment
@UmutBenzer У меня было то же самое, никакого эффекта, если бы он был рядом с другими флагами в «build.sbt». Если я сделал для него строку (используя ++=), я получил предупреждения. Странный.   -  person akauppi    schedule 08.08.2014


Ответы (1)


Чтобы увидеть точное сообщение, вам нужно добавить флаг «feature» в файл определения сборки sbt:

scalacOptions ++= Seq("-feature")

Почему? Scala 2.10 не только представил новые функции, но и перетасовал старые — некоторые из самых мощных функций Scala были скрыты, потому что их нужно использовать с большой ответственностью: иногда они использовались по ошибке. Вот почему возник SIP-18. Отныне, чтобы получить доступ к динамике, высшим видам, экзистенциальным типам и некоторым другим вещам, вы должны явно включить их.

person om-nom-nom    schedule 20.03.2013
comment
Если вы хотите временно сделать это в командной строке, используйте set scalacOptions += "-feature" - person Traveler; 08.08.2017