我的 jboss seam 应用程序在 eclipse 中编译没有错误。当我尝试手动编译时出现错误
STATE_QUERY has private access
@NamedQueries({
@NamedQuery(name = CurrentModuleState.FIND_MODULE_STATE,
query = CurrentModuleState.STATE_QUERY)
})
public class CurrentModuleState implements java.io.Serializable {
...
private static final String STATE_QUERY = "...";
Ant :
<javac encoding="cp1251" srcdir="${src-dir}" destdir="${compile-dir}"
executable="${javac-path}"
compiler="javac1.6">
<classpath refid="lib.classpath" />
<classpath refid="jboss-lib.classpath" />
</javac>
我怎样才能编译它? 附注抱歉我的英语)
最佳答案
这是一件奇怪的事情,但我想这是因为该字段是私有(private)
,但使用前面的类名进行访问。编译器应该意识到它是从同一个类引用的,但显然没有。
因此,将 private
更改为 protected
(不优雅,但应该可行)
您还可以尝试升级 JDK(以及 javac)。注意eclipse使用自己的编译器(不是javac)
关于java - java注解中的私有(private)字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58076383/