工具

  • Java

pyreverse

  • 类图制作工具

异常解决

Max Recursion Error 异常

  • 错误提示

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    
    ....
      File "/home/sawyer/miniconda3/envs/cde2/lib/python3.7/site-packages/astroid/decorators.py", line 111, in wrapped
        for res in _func(node, context, **kwargs):
      File "/home/sawyer/miniconda3/envs/cde2/lib/python3.7/site-packages/astroid/inference.py", line 481, in _filter_operation_errors
        for result in infer_callable(self, context):
      File "/home/sawyer/miniconda3/envs/cde2/lib/python3.7/site-packages/astroid/inference.py", line 769, in _infer_binop
        lhs_context = copy_context(context)
      File "/home/sawyer/miniconda3/envs/cde2/lib/python3.7/site-packages/astroid/context.py", line 188, in copy_context
        return context.clone()
    RecursionError: maximum recursion depth exceeded
  • 解决方法

    • 提高 递归限制

      • 修改文件 ~/miniconda/envs/py38/bin/pyreverse
      • 添加代码

        1
        2
        
        import sys
        sys.setrecursionlimit(20000)

导出图片

命令:

1
2
pyreverse -o png -P my-project chemdataextractor/model/units
# chemdataextractor/model/units --> 路径

导出 包名

  • eg: my_package.my_module.MYClass
  • 命令行参数

    • -my
    • 命令

      1
      
      pyreverse -ASmy -o png -P my-project chemdataextractor/model/units
  • -P

    • 用于制作 导出文件名

忽略方法

  • 参数

    • -k <package/path>
  • 命令

    1
    
    pyreverse -k chemdataextractor/model/units -ASmy -o png -P my-project chemdataextractor/model/units