我想使用 SchemaCrawler 生成数据库模式图,它是 Maven 插件。我不想使用像
java -classpath ../_schemacrawler/lib/*:lib/* ...
因为它必须是通用的。我想对所有依赖项使用 Maven,用户只会执行以下操作:
mvn schemacrawler:schemacrawler
甚至是包装此命令的小型 bash 脚本。
但是我在执行时收到 NullPointerException 。我的 pom.xml 的一部分:
<build>
<plugins>
<plugin>
<groupId>net.sourceforge.schemacrawler</groupId>
<artifactId>schemacrawler-maven-plugin</artifactId>
<version>9.5</version>
<configuration>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/my-db</url>
<user>root</user>
<password>qwerty</password>
<infolevel>maximum</infolevel>
<command>details</command>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.35</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
执行时
mvn schemacrawler:schemacrawler -e
我越来越:
[错误] 无法在项目 my-project 上执行目标 net.sourceforge.schemacrawler:schemacrawler-maven-plugin:9.5:schemacrawler (default-cli):执行目标 net.sourceforge.schemacrawler:schemacrawler-maven-plugin 的 default-cli :9.5:架构爬虫失败。NullPointerException -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: 无法在项目 my-project 上执行目标 net.sourceforge.schemacrawler:schemacrawler-maven-plugin:9.5:schemacrawler (default-cli):执行默认-目标 net.sourceforge.schemacrawler:schemacrawler-maven-plugin:9.5:schemacrawler 的 cli 失败。在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:225) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 在 org.apache.maven.lifecycle .internal.MojoExecutor。invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:第497章.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 原因:org.apache.maven.plugin.PluginExecutionException: Execution目标 net.sourceforge.schemacrawler:schemacrawler-maven-plugin:9.5:schemacrawler 的默认 cli 失败。在 org.apache.maven.plugin.DefaultBuildPluginManager。
请帮助我 - 怎么做?