我的代码在 Eclipse 中编译得很好,但是当我尝试从命令行编译(通过我们基于 ruby 的构建系统)时,我收到以下错误消息:
static import only from classes and interfaces
建议不允许静态导入公共静态字段。我应该寻找什么来帮助诊断这个问题?我该如何修复它?
Update:根据 @Ted 的请求,引用文件中的常量声明:
public static final String NULL = "<NULL>";
以及引用文件中的(bowdlerized)引用:
import static my.path.MyClass.NULL;
我的猜测是 Eclipse 和 buildr 使用不同的 Java 编译器版本或不同的编译器标志。 Java 7 编译器中存在一个错误(错误号:715906 https://bugs.java.com/bugdatabase/view_bug?bug_id=7159016),当您静态导入特定字段时会生成此错误。解决方法是使用通配符静态导入。所以而不是:
import static pkg.Class.staticField;
do this:
import static pkg.Class.*;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)