You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SchemaSpy生成ER图失败:GraphViz配置异常求助

问题:SchemaSpy无法转换.dot文件生成ER图(GraphViz配置问题)

问题现象

  • SchemaSpy已成功生成数据库表的HTML文件及对应的.dot文件,但无法将.dot文件转换为ER图并嵌入HTML页面展示
  • 执行过程中核心报错为Dot missing or invalid version

版本信息

  • Java:v8
  • SchemaSpy:v6.1.0
  • Graphviz:dot - graphviz version 7.0.2 (20221119.0110)
  • MySQL驱动:mysql-connector-java-8.0.30.jar

执行命令

java -jar .\schemaspy-6.1.0.jar -t mysql -dp C:\mysql-connector-java-8.0.30.jar -db datagenerator_poc -gv 'C:\Program Files (x86)\Graphviz' -host 127.0.0.1 -port 5000 -s mysql -u root -p staging123 -o /SchemaSpy

关键报错日志

INFO - Graphviz rendered set to ''
ERROR - RelationShipDiagramError
Failed to produce diagram for: \SchemaSpy\diagrams\summary\relationships.implied.compact.dot
...
Exception in thread "main" java.lang.reflect.InvocationTargetException
...
Caused by: org.schemaspy.output.diagram.DiagramException: Dot missing or invalid version

解决方案

1. 修正Graphviz路径参数

命令中-gv参数必须指向dot.exe的完整路径,而非Graphviz的安装根目录。SchemaSpy需要直接调用dot工具来转换文件,仅指定目录无法定位到执行程序。
修改后的命令示例:

java -jar .\schemaspy-6.1.0.jar -t mysql -dp C:\mysql-connector-java-8.0.30.jar -db datagenerator_poc -gv "C:\Program Files (x86)\Graphviz\bin\dot.exe" -host 127.0.0.1 -port 5000 -s mysql -u root -p staging123 -o /SchemaSpy

2. 验证Graphviz工具可用性

  • 打开命令提示符,执行dot -V,确认能正常返回版本信息
  • 如果执行报错,检查Graphviz的bin目录是否已添加到系统环境变量PATH中;若未添加,后续调用需始终使用dot.exe的完整路径

3. 检查路径格式与权限

  • Windows系统下,路径包含空格时需用双引号包裹,避免解析错误
  • 确认SchemaSpy对输出目录/SchemaSpy拥有读写权限,防止生成的文件无法被访问或修改

内容的提问来源于stack exchange,提问作者iUbaid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 14:40:15