当我从命令行扫描我的XML文件时,我看到“没有可用的JSR 303 Bean验证提供程序。”:
C:\Dev\jqassistant.distribution-1.0.0>.\bin\jqassistant.cmd scan -f ..\Main\PC_MES\docs\javadoc\publishedApi.xml -s jqassistant\xml
Using JQASSISTANT_HOME 'C:\Dev\jqassistant.distribution-1.0.0\bin\..'.
[main] INFO com.buschmais.jqassistant.core.plugin.impl.PluginConfigurationReaderImpl - Loaded jQAssistant plugins [CDI, Common, Core Analysis, EJB3, Facelet, JAX-RS, JPA 2, JUnit, Java, Java 8, Java EE 6, Maven 2 Repository, Maven 3, OSGi, RDBMS, TestNG, Tycho, XML].
Opening store in directory 'C:\Dev\jqassistant.distribution-1.0.0\jqassistant\xml'
[main] INFO com.buschmais.xo.impl.XOManagerFactoryImpl - No JSR 303 Bean Validation provider available.
[main] INFO com.buschmais.xo.neo4j.impl.datastore.EmbeddedNeo4jDatastore - Creating index for label Pom on property 'fqn'.
... <some more infos about index creation>
生成的数据库只包含一个节点,一个文件节点,但没有该文件的XML内容的节点。该文件没有相应的DTD,如下所示:
<?xml version="1.0"?>
<publishedAPI>
<class name="MyClass">
<constructor signature="void <init>()"></constructor>
<method signature="void Save(Time, java.lang.String, AccessPrivilege)"></method>
</class>
</publishedAPI>
答案 0 :(得分:1)
XML文件可能非常大,扫描可能需要很长时间,因此每个默认情况下只会解析已知的XML文档(例如beans.xml,persistence.xml)。
您可以通过指定范围强制扫描单个XML内容,例如在命令行上:
jqassistant.sh scan -f xml:document::myFile.xml
或在Maven插件的配置中:
<configuration>
<scanIncludes>
<scanInclude>
<path>${project.build.directory}/myFile.xml</path>
<scope>xml:document</scope>
</scanInclude>
</scanIncludes>
</configuration>
警告“没有可用的JSR 303 Bean验证提供程序”。由eXtended Objects发布,jQAssistant背后的对象/图形映射框架 - 在这种情况下它并不表示任何问题,也许消息的严重性可以简化为“info”