Ошибки компиляции при попытке собрать Apache Xerces в Java

Я пытаюсь собрать Apache Xerxes 2.11.0 в Java и сталкиваюсь со следующими ошибками компиляции:

   [xjavac] c:\Program Files\Java\libraries\xerces-2_11_0\build\src\org\apache\html\dom\HTMLFrameElementImpl.java:28: error: HTMLFrameElementImpl is not abstract and does not override abstract method getContentDocument() in HTMLFrameElement

   [xjavac] public class HTMLFrameElementImpl
   [xjavac]        ^
   [xjavac] c:\Program Files\Java\libraries\xerces-2_11_0\build\src\org\apache\html\dom\HTMLIFrameElementImpl.java:28: error: HTMLIFrameElementImpl is not abstract and does not override abstract method getContentDocument() in HTMLIFrameElement
   [xjavac] public class HTMLIFrameElementImpl
   [xjavac]        ^
   [xjavac] c:\Program Files\Java\libraries\xerces-2_11_0\build\src\org\apache\html\dom\HTMLObjectElementImpl.java:28: error: HTMLObjectElementImpl is not abstract and does not override abstract method getContentDocument() in HTMLObjectElement
   [xjavac] public class HTMLObjectElementImpl
   [xjavac]        ^

Любые мысли о том, что я могу упустить или сделать неправильно, или лучше, где-нибудь я могу просто скачать предварительно скомпилированный jar для этой библиотеки? ("Двоичный дистрибутив", доступный на странице загрузок, кажется, на самом деле просто документация и примеры.)

2 ответа

Решение

Я нашел банки здесь:

http://search.maven.org/#artifactdetails|xerces|xercesImpl|2.11.0|jar

Я не смог заставить m2e загрузить их в eclipse, но я смог использовать подход AddExternalJars..., чтобы добавить их (основной jar плюс исходный и javadoc jars)

Пожалуйста, смотрите следующую ссылку, чтобы решить проблему компиляции: XERCESJ-1621 xerces2 не собирается с Mac OS 10.9 и JDK 1.7

Основная идея:

Проблема в том, что Xerces поддерживает только HTML-спецификацию DOM уровня 1. Однако установленный в вашей системе JDK версии 1.7 соответствует спецификации DOM Level 3. Недавно добавленные методы из спецификации уровня 2 и уровня 3 в JDK 1.5 и более поздних версиях не реализованы в Xerces. Поэтому одним из вариантов является создание кода с более старой версией, то есть JDK 1.4 и т. Д., Или обходной путь исправления: добавить в исходный код фиктивные реализации методов, чтобы вы не получали ошибок за их неисполнение.

Другие вопросы по тегам