2

当我从命令行扫描我的 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 &lt;init&gt;()"></constructor>
    <method signature="void Save(Time, java.lang.String, AccessPrivilege)"></method>
  </class>
</publishedAPI>
4

1 回答 1

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 验证提供程序”。由 jQAssistant 背后的对象/图形映射框架 eXtended Objects 发布 - 在这种情况下它不表示任何问题,也许消息的严重性可以降低到“信息”

于 2015-07-15T13:06:18.413 回答