在我的项目中,我有标准的java系统库和rt.jar,它有类。
package javax.xml;
public final class XMLConstants {
private XMLConstants() {
}
public static final String NULL_NS_URI = "";
public static final String DEFAULT_NS_PREFIX = "";
...
}
还包括带有类
的stax-api-1.0.jarpackage javax.xml;
public class XMLConstants {
public static final String DEFAULT_NS_PREFIX = "";
public static final String XML_NS_PREFIX = "xml";
public static final String XML_NS_URI = "http://www.w3.org/XML/1998/namespace";
public static final String XMLNS_ATTRIBUTE = "xmlns";
public static final String XMLNS_ATTRIBUTE_NS_URI = "http://www.w3.org/2000/xmlns/";
}
在第三课中,我需要获得看起来像这样的NULL_NS_URI
import javax.xml.XMLConstants;
public myClass(){
doSomethin() {
...
XMLConstants.NULL_NS_URI
...
}
}
它给出了错误
NULL_NS_URI cannot be resolved or is not a field
当我按下ctrl +点击myClass中的XMLConstants时,eclipse将我带到stax-api.jar类。 当我在同事机器eclipse上做同样的事情时,将他带到rt.jar,没有错误,因为在该类中定义了NULL_NS_URI。
答案 0 :(得分:6)
检查构建类路径顺序。如果rt.jar
位于stax-api-1.0.jar
之上,问题应该得到解决。因为,在编译时,编译器会按构建类路径顺序查找jar。