2013-02-01 9 views
5

私が開発するプログラムの出発点として使用するsbtプロジェクトスケルトンを作りました。SBTは廃止について文句を言います

しばらくの間、このスケルトンで新しいプロジェクトを開始すると2つの廃止警告が表示されるという問題があります。スケルトンはソースファイルで構成されていません。たとえそうであっても、私のbuild.sbtはscalac-option "-deprecation"を保持しています。

警告自体は次のようになります。

[情報] /xxx/.../xxx/.sbt/staging/xxx/target/scala-2.9.2/sbtする1つのScalaのソースをコンパイルします-0.12/classes ...
[warn]推奨されていない警告が1件ありました。詳細については、-deprecationで再実行してください。
[警告] 1つの警告が見つかりました
[info] 1つのScalaソースを/xxx/.../xxx/project/target/scala-2.9.2/sbt-0.12/classesにコンパイルする...
[警告]推奨されていない警告が1件ありました。最初の警告の理由は非推奨.sbtフォルダの問題のようですけれども再実行の詳細
ため-deprecationで[警告] 1つの警告が

を見つけました(そう、この警告自体はならないようです私のフレームワークの中で大きな問題)私は第2の警告について少し混乱しています。誰かが "-deprecation"オプションでsbtを起動する方法を知っているかどうか尋ねたいと思います。ただ、明確にするとkorefnとして、これはあるという重複を強調しないように

が示唆:

scalacOptionsを++ =配列( "-unchecked"、 "-deprecation")

ですすでに内側にあり、警告は、sbtが最初にスケルトンに適用されたときにのみ発生します。その後、sbtは黙っています。

バグもありません。このオプションは、スケルトン内に格納されているすべてのソースファイルで正常に動作します。

+0

デュエットofstackoverflow.com/questions/15480347/ – fommil

答えて

-1

これは重複しています。ソリューションscala-sbt-how-to-re-run-with-deprecation またはhow-to-see-all-the-warnings-in-sbt-0-11

ため チェックは基本的にbuild.sbtに追加:

scalacOptions ++= Seq("-unchecked", "-deprecation","-feature") //any other option 
//you like 
+0

申し訳ありませんが、私が述べたように、これはすでに内部にあります。しかし、このscalacOptionsは、スケルトンが最初に開始されたときには適用されないようです。 – her

+0

hello worldの例をコンパイルして、どのレポートがスローされるかを調べましたか(非推奨/機能の警告)? – korefn

+0

プロジェクトのスケルトンはソース単位で空です。スケルトンの動作に最初にsbtを適用する前に有効なhelloworldを配置しても、同じままです。スケルトンは、個々のsrc-folder構造、いくつかのgit設定(.gitignoreなど)、vim-configuration、いくつかのネイティブlibs、テキストファイルで構成されています。それ以外の場合は、sbt構成ファイルのみを保持します。 sbt-configurationはよく使うプラグインを扱います。私は、sbtが最初にスケルトンに適用されたときにのみ発生するので、設定ファイルの "コンパイル"プロセスに関して警告が必要であると仮定します。 – her

6

これはあるかもしれないとして[OK]を、私は、私が共有したいSBT-基を介して2つの可能な解決策を受け取りました他の人の関心。

解決方法1:SBTコンソールから...

  • リロードプラグイン
  • セットscalacOptions ++ =配列( "-unchecked"、 "-deprecation")
  • セッション
  • 保存projの下.sbtファイルに置き二回目のライン "scalacOptions ++ = SEQ( "-unchecked"、 "-deprecation")":

溶液2を返すリロードect-ディレクトリ。デフォルトはproject/pluginsです。備考:build.sbt内の "scalacOptions ++ = Seq(" -unchecked "、" -deprecation ")"は、元の質問で述べたように、プロジェクトソース上で警告を捕捉し、sbtプラグインなどでは捕捉しません。

関連する問題