2009-12-30 10 views
15
Description Resource Path Location Type 
No grammar constraints (DTD or XML schema) detected for the document. TEST-net.kindleit.gae.example.server.MessageRepositoryTest.xml /projecttest-gae-example/target/surefire-reports line 1 XML Problem 
No grammar constraints (DTD or XML schema) detected for the document. appengine-web.xml /projecttest-gae-example/src/main/webapp/WEB-INF line 1 XML Problem 
No grammar constraints (DTD or XML schema) detected for the document. appengine-web.xml /projecttest-gae-example/target/projecttest-gae-example-1.0-SNAPSHOT/WEB-INF line 1 XML Problem 
No grammar constraints (DTD or XML schema) detected for the document. datastore-indexes-auto.xml /projecttest-gae-example/WEB-INF/appengine-generated line 1 XML Problem 
No grammar constraints (DTD or XML schema) detected for the document. jdoconfig.xml /projecttest-gae-example/src/main/resources/META-INF line 1 XML Problem 
No grammar constraints (DTD or XML schema) detected for the document. jdoconfig.xml /projecttest-gae-example/target/projecttest-gae-example-1.0-SNAPSHOT/WEB-INF/classes/META-INF line 1 XML Problem 
No grammar constraints (DTD or XML schema) detected for the document. webapp-cache.xml /projecttest-gae-example/target/war/work line 1 XML Problem 

cómo solucionar el problema anterior en eclipse? mi proyecto está basado en maven. ¿Es porque pierdo algunos archivos dtd? cómo incluirlo?eclipse en maven advertencia de proyecto 'Esquema DTD o XML'

ejemplo jdoconfig.xml

<?xml version="1.0" encoding="utf-8"?> 
<jdoconfig xmlns="http://java.sun.com/xml/ns/jdo/jdoconfig" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:noNamespaceSchemaLocation="http://java.sun.com/xml/ns/jdo/jdoconfig"> 

    <persistence-manager-factory name="transactions-optional"> 
     <property name="javax.jdo.PersistenceManagerFactoryClass" 
      value="org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManagerFactory"/> 
     <property name="javax.jdo.option.ConnectionURL" value="appengine"/> 
     <property name="javax.jdo.option.NontransactionalRead" value="true"/> 
     <property name="javax.jdo.option.NontransactionalWrite" value="true"/> 
     <property name="javax.jdo.option.RetainValues" value="true"/> 
     <property name="datanucleus.appengine.autoCreateDatastoreTxns" value="true"/> 
    </persistence-manager-factory> 
</jdoconfig> 
+0

Vea también: http://stackoverflow.com/questions/11757507/how-can-i-stop-eclipse-warning-about-target-folders-contents –

Respuesta

25

respuesta inicial (Dic 2009)

Si tiene DAP (con la parte XML incluido):

Preferencias-> validation-> XML Validador-> Desclick manual y/o compilación debe evitar eclipse verificando el DTD

O:

En la página Preferencias, elija XML> Archivos XML. En la sección "Validar archivos", puede cambiar la gravedad en el menú desplegable de Advertencia a Ignorar. Solo tenga en cuenta que esto es para todos los archivos XML, no solo para build.xml. Pero puede agregar build.xml al filtro de exclusión si todavía desea esta advertencia para otros archivos XML.

alt text


actualización (febrero de 2012)

alguien hizo en los comentarios (ahora suprimido) del punto válido que debe Nunca ignore las advertencias.
¡Pero arréglenlo!

Cuando pregunte cómo, continúa (el énfasis es mío):

Me preparo Eclipse porque este es claramente un signo de un mal diseño.
Por ejemplo, podría informar un error al rastreador de errores de Eclipse Foundation.
Eclipse necesita agregar valores predeterminados "sanos" para los archivos del proyecto Spring/Java EE que son "conocidos" y no necesitan las gramáticas XML.
O algo está mal con el archivo o Eclipse está roto en alguna parte.
tres problemas que tuve:

  1. con Log4j.xml archivo, diciendo que no puede encontrar la definición XML para log4j.dtd aunque el archivo está en la ruta del sistema en el que el validador se ve archivo
  2. Ant build.xml dice que tengo no hay restricciones gramaticales
  3. por alguna razón no puedo limpiar el proyecto.

En realidad, hay errores discusión de estrategias/bugs en torno a esos advertencia:

  • bug 218326: "" No hay restricciones gramaticales "advertencias para archivos del sistema en la vista Problemas" hizo tomar la 'ruta de la exclusión'
  • bug 331749 se queja de "No hay restricciones gramaticales" a pesar de que el directorio se excluye

Obviamente, se requieren más soluciones con respecto al manejo de esas advertencias.

+0

Triste que el error 331749 tiene solo un comentario y ninguna actividad por 3.5 años. – knittl

+0

@knittl Me acabo de dar cuenta de que ese viejo error fue escrito por http://stackoverflow.com/users/34088/aaron-digulla – VonC

0

Es solo una advertencia. En preferencias: XML/XML Files/Validation, puede desactivarlo.

4

¿Cómo solucionar el problema anterior en eclipse?

Es más una advertencia que un problema real. Puede decirle a Eclipse que ignore esto al validar archivos (Windows> Preferencias> XML> Archivos XML> Editor> Validación).

¿Es porque echo de menos algunos archivos dtd?

No, es porque el documento XML no declara ningún DTD o XSD.

¿Como se debe incluir?

Por supuesto, puede agregar la declaración manualmente (si sabe qué DTD o Esquema agregar). O podría decirle a Eclipse que ignore el hecho de que no se especifica ninguna gramática como se mencionó anteriormente. O simplemente podrías vivir con eso.

3

Como han insinuado otros, cada advertencia debe abordarse por separado.

Para su advertencia específica de -

No grammar constraints (DTD or XML schema) detected for the document. TEST-net.kindleit.gae.example.server.MessageRepositoryTest.xml /projecttest-gae-example/target/surefire-reports 

he conectado un fallo en contra de éxito seguro como SUREFIRE-964 ya que estoy viendo el mismo comportamiento.

Para excluir solo estas advertencias, puede ir a Preferencias> Validación. Encuentre el Validador XML y haga clic en Configuración. Seleccione Excluir grupo, haga clic en Agregar regla, seleccione Carpeta o nombre de archivo y haga clic en Carpeta del navegador para seleccionar reportes target/surefire. En ese punto, Eclipse debería indicarle que necesita reconstruir y/o validar. O bien, puede hacer clic con el botón derecho en su proyecto y seleccionar Validar.

0

No creo que sea una buena idea apagarlo. Es posible que tenga problemas al comenzar a analizar, etc. Es mejor incluir el DTD en el Catálogo XML.

Vaya a Windows -> Preferencias -> XML -> Catálogo XML Agregue la DTD que falta como sus entradas especificadas por el usuario y eclipse lo validará sin ningún problema. Es posible que deba comenzar la validación del archivo después.

Puede encontrar esta solución también en http://juliendkim.blogspot.de/2012/09/how-to-fix-log4jdtd-xml-problem-in.html que describe el problema con log4j.dtd.

Cuestiones relacionadas