2013-03-20 12 views
21

Khi biên dịch một ứng dụng với Play2, đôi khi các loại thông báo xuất hiện trên thiết bị đầu cuối của tôi:Cách nhận thêm thông tin về cảnh báo cờ 'tính năng'?

[info] Biên soạn 1 nguồn Scala tới ~/target/scala-2.10/classes ...
[cảnh báo] đã có 1 cảnh báo tính năng; tái chạy với -feature để biết chi tiết
[cảnh báo] một cảnh báo tìm thấy
[thành công] Biên soạn trong 1s

Làm thế nào tôi có thể nhận được thêm thông tin về những cảnh báo? Nó phải là một lựa chọn của SBT nhưng tôi không có ý tưởng nơi để tìm kiếm ...

+3

Đó là ảnh hưởng của SIP-18 http://docs.scala-lang.org/sips/pending/modularizing-language-features.html đến cảnh báo xem thêm cờ này trong định nghĩa sbt của bạn: 'scalacOptions ++ = Seq (... "-feature") ' –

+0

Thật vậy! Điều đó làm việc, cảm ơn! Bạn có phiền khi đưa ra câu trả lời với điều đó không? –

+1

@ i.am.michiel Bạn đã thêm tệp đó vào PlayFramework 2 chính xác? Tôi triying để thêm 'scalacOptions ++ = Seq (" - bỏ chọn "," -deprecation "," - tính năng ")' để Build.scala nhưng nó dường như không có bất kỳ tác dụng. –

Trả lời

38

Để xem được thông báo chính xác bạn cần phải thêm "tính năng" cờ trong SBT xây dựng tập tin định nghĩa của bạn:

scalacOptions ++= Seq("-feature") 

Tại sao ? Scala 2.10 không chỉ giới thiệu các tính năng mới, mà còn cải tổ những tính năng cũ hơn - một số tính năng mạnh nhất của scala bị ẩn đi vì chúng phải được sử dụng với trách nhiệm lớn: sometimes they were used mistakingly. Đó là lý do tại sao SIP-18 đã phát sinh. Từ bây giờ, để truy cập động lực, các loại cao hơn, các loại tồn tại và một số thứ khác bạn phải bật chúng một cách rõ ràng.

+0

Nếu bạn muốn thực hiện điều này trên dòng lệnh tạm thời, hãy sử dụng 'set scalacOptions + =" -feature "' – Traveler