Node.getTextContent中jdk 6的编译错误

Kam*_*mar 24 java

java源代码不用jdk编译6.

 import org.w3c.dom.Node;
 Node node = list.item(0);
 String txtContent = node.getTextContent();
Run Code Online (Sandbox Code Playgroud)

在jdk 6中找不到getTextContent()

怎么能解决这个编译问题.

小智 89

我带着同样的问题来到这里.更糟糕的是:我有两个并排的项目,都是针对相同的JRE(1.6),一个是能够解析Node.getTextContent()而另一个不是.我偶然解决了这个问题; 我去了项目属性| Java构建路径| "订购和导出"选项卡,选择了JRE(位于列表底部)并单击"顶部"按钮将其移至顶部.我的问题消失了.似乎我想要的节点被另一个节点隐藏了.: - \也许这会对你的问题有所帮助.

  • +1这解决了我的问题,谢谢. (5认同)

小智 8

虽然迟到了......也许有人会觉得这很有用.

我不喜欢JRE的手动项目设置,因为每次项目导入时我的所有同事都必须这样做,所以我找到了另一个解决方案.

在我的例子中,我有以下依赖树:org.reflections(0.9.8) - > dom4j(1.6.1) - > xml-apis(1.0.b2).

为了解决这个问题,我在org.reflections依赖项中添加了一个排除项,如下所示:

<dependency>
    <groupId>org.reflections</groupId>
    <artifactId>reflections</artifactId>
    <version>0.9.8</version>
    <exclusions>
        <exclusion>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
        </exclusion>
    </exclusions>
</dependency>
Run Code Online (Sandbox Code Playgroud)

在你的情况下,可能还有另一个导入错误jar的依赖项.例如:在Java/Maven中处理"Xerces hell"?

请查看http://www.jarfinder.com/index.php/java/info/org.w3c.dom.Node以查看包含该类的所有jar.


Nal*_*chu 7

我也遇到过类似的问题.它与源代码无关.解决问题的步骤是,

  1. 转到项目属性(右键单击项目并选择属性)
  2. 选择Java Build Path
  3. 转到"订购和导出"选项卡

Buildpath中的Order和Export设置

  1. 确保您的JRE库在TOP上.如果它不在顶部,请将其置于顶部.
  2. 单击确定,然后在右下方完成构建进度后查看.