在C、C++和C#中,有#error指令,使编译器停止编译并发出指定的错误消息。
#error "Ouch!"导致VC++9发出以下内容:
1>Source.cpp(10) : fatal error C1189: #error : "Ouch!"停止编译。
我找不到与Java类似的东西。
Java是否有类似于#error指令的东西,使编译器停止编译并发出特定的错误消息?
发布于 2014-07-22 08:51:55
问题是,为什么在Java中需要这个呢?在C/C++中,您有#ifdef,因此如果特定的静态条件为真,就可以发出#error。在Java中,没有这样的东西,所有的代码都会被编译。因此,您将始终得到错误。拥有一个总是产生编译错误的文件是没有多大用处的。
如果您确实需要一个总是引发错误的文件:
您可以简单地添加一个常见的语法错误;您将不会得到可自定义的错误消息,但是您将得到一个不编译的文件。您可以在错误后面添加注释。由于大多数编译器都会显示遇到错误的行,因此将显示该注释。为什么不简单地重用#error
在您的java程序中:
#error // Description因为Java编译器无法识别#,这将产生语法错误。
发布于 2014-07-22 10:30:17
如果您非常绝望,您可以使用"javax注释处理API“来实现类似的目标。看看这个
这样做的目的是:
javax.tools.Diagnostic.Kind.WARNING或
javax.tools.Diagnostic.Kind.ERRORhttps://stackoverflow.com/questions/24882772
复制相似问题