sbt 0.12.4 - there were x feature warning(s); re-run with -feature for details

匿名 (未验证) 提交于 2019-12-03 08:42:37

问题:

I get an error there were 15 feature warning(s); re-run with -feature for details :

$ /usr/local/sbt/bin/sbt [info] Loading project definition from /home/alex/Documents/projects/my_app123/project [info] Set current project to sbt-android (in build file:/home/alex/Documents/projects/my_app123/)  > compile -feature [error] Expected end of input. [error] compile -feature [error]        ^  > sbt-version [info] 0.12.4  > compile  [warn] Credentials file /home/alex/.ivy2/.credentials does not exist [info] Compiling 20 Scala sources to /home/alex/Documents/projects/my_app123/target/scala-2.10/sbt-0.12/classes... [error] there were 15 feature warning(s); re-run with -feature for details [error] one error found [error] (compile:compile) Compilation failed [error] Total time: 27 s, completed 01 12, 15 1:20:12 PM 

In build.sbt

scalaVersion := "2.10.4" 

I can't find out what that error is because it doesn't say that, even when I run sbt as $ /usr/local/sbt/bin/sbt -feature.

$ /usr/local/sbt/bin/sbt -feature [info] Loading project definition from /home/alex/Documents/projects/my_app123/project [info] Set current project to sbt-android (in build file:/home/alex/Documents/projects/my_app123/) $ 

It's JDK 1.7

What's the error is and how do I fix it?

UPDATE:

build.sbt

scalacOptions in ThisBuild ++= Seq("-unchecked", "-deprecation") 

or in sbt itself:

> set scalacOptions in ThisBuild ++= Seq("-unchecked", "-deprecation")

The error remains the same.

回答1:

I don't get a chance to use sbt on a daily basis, so this is just to confirm the suggestion in the linked answer:

$ sbt [info] Set current project to Compiler options (in build file:/home/apm/tmp/sbtwarn/) > compile [info] Compiling 1 Scala source to /home/apm/tmp/sbtwarn/target/scala-2.11/classes... [warn] there was one feature warning; re-run with -feature for details [warn] one warning found [success] Total time: 4 s, completed Jan 12, 2015 9:45:17 AM > set scalacOptions in ThisBuild ++= Seq("-feature") [info] Defining {.}/*:scalacOptions [info] The new value will be used by compile:scalacOptions [info] Reapplying settings... [info] Set current project to Compiler options (in build file:/home/apm/tmp/sbtwarn/) > compile [info] Compiling 1 Scala source to /home/apm/tmp/sbtwarn/target/scala-2.11/classes... [warn] /home/apm/tmp/sbtwarn/src/main/scala/Sample.scala:6: postfix operator head should be enabled [warn] by making the implicit value scala.language.postfixOps visible. [warn] This can be achieved by adding the import clause 'import scala.language.postfixOps' [warn] or by setting the compiler option -language:postfixOps. [warn] See the Scala docs for value scala.language.postfixOps for a discussion [warn] why the feature should be explicitly enabled. [warn]   Console println (List(1,2,3) head) [warn]                                ^ [warn] one warning found [success] Total time: 1 s, completed Jan 12, 2015 9:45:46 AM 

Hey, it worked!



回答2:

You should add

scalacOptions += "-feature" 

to your build.sbt and execute reload if your sbt console is running (or restart it).

Alternatively if you want to set it only for a single session, while in sbt console, you can write set scalacOptions += "-feature", this setting is applied immediately, no need to reload or restart sbt console.

Re-run with -feature for details



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!