2010-08-17 10 views
5

Tôi đang chuyển mã cơ sở mã 2.7.7 trên 2.8 và tự hỏi liệu có tùy chọn trình biên dịch để hiển thị thông báo di chuyển không? Tôi bị cắn bởi thay đổi về hành vi đối với các chuỗi có thể thay đổi mà có thông báo di chuyển sau [1], tuy nhiên nó không hiển thị bất cứ điều gì khi tôi xây dựng dự án (tôi đã ngừng sử dụng và cảnh báo không được kiểm tra đã bật)Bật cảnh báo di chuyển

1: @migration(2, 8, "As of 2.8, this operation creates a new map. To add an element as a\n"+ "side effect to an existing map and return that map itself, use +=." )

Trả lời

8

các tùy chọn là: -Xmigration

Bước scalac -help sẽ hiển thị các tùy chọn tiêu chuẩn của trình biên dịch Scala.

Nhập scalac -X sẽ hiển thị các tùy chọn nâng cao.

Nhập scalac -Y sẽ hiển thị tùy chọn riêng tư.

+0

Cảm ơn! Rất hữu ích! – BenjaminJackman

3

Đó là tùy chọn mở rộng, -Xmigration.

~: scala -X 
Usage: scala <options> <source files> 
Possible advanced options include: 
    -Xassem-extdirs <dirs>   List of directories containing assemblies, defaults to `lib' 
    -Xassem-name <file>   Name of the output assembly (only relevant with -target:msil) 
    -Xassem-path <path>   List of assemblies referenced by the program (only relevant with -target:msil) 
    -Xcheck-null     Emit warning on selection of nullable reference 
    -Xcheckinit     Add runtime checks on field accessors. Uninitialized accesses result in an exception being thrown. 
    -Xdisable-assertions   Generate no assertions and assumptions 
    -Xelide-below     Generate calls to @elidable-marked methods only if method priority is greater than argument. 
    -Xexperimental     Enable experimental extensions 
    -Xfatal-warnings    Fail the compilation if there are any warnings. 
    -Xfuture      Turn on future language features 
    -Xgenerate-phase-graph <file> Generate the phase graphs (outputs .dot files) to fileX.dot 
    -Xlog-implicits    Show more info on why some implicits are not applicable 
    -Xmigration     Warn about constructs whose behavior may have changed between 2.7 and 2.8 
    -Xno-forwarders    Do not generate static forwarders in mirror classes 
    -Xno-uescape     Disables handling of \u unicode escapes 
    -Xnojline      Do not use JLine for editing 
    -Xplugin-disable:<plugin>  Disable a plugin 
    -Xplugin-list     Print a synopsis of loaded plugins 
    -Xplugin-require:<plugin>  Abort unless a plugin is available 
    -Xplugin:<file>    Load a plugin from a file 
    -Xpluginsdir <path>   Path to search compiler plugins 
    -Xprint-icode     Log internal icode to *.icode files 
    -Xprint-pos     Print tree positions (as offsets) 
    -Xprint-types     Print tree types (debugging option) 
    -Xprint:<phase>    Print out program after <phase> or "all" 
    -Xprompt      Display a prompt after each error (debugging option) 
    -Xresident      Compiler stays resident, files to compile are read from standard input 
    -Xscript <object>    Compile as a script, wrapping the code into object.main() 
    -Xshow-class <class>   Show class info 
    -Xshow-object <object>   Show object info 
    -Xshow-phases     Print a synopsis of compiler phases 
    -Xsource-reader <classname> Specify a custom method for reading source files 
    -Xsourcedir <directory>  When -target:msil, the source folder structure is mirrored in output directory. 
    -Xwarninit      Warn about possible changes in initialization semantics 
    -Y        Print a synopsis of private options 
2
% scala -X 
Usage: scala <options> <source files> 
Possible advanced options include: 
    ... 
    -Xmigration     Warn about constructs whose behavior may have changed between 2.7 and 2.8 
    ...