<bdo id='xgOzy'></bdo><ul id='xgOzy'></ul>
    1. <i id='xgOzy'><tr id='xgOzy'><dt id='xgOzy'><q id='xgOzy'><span id='xgOzy'><b id='xgOzy'><form id='xgOzy'><ins id='xgOzy'></ins><ul id='xgOzy'></ul><sub id='xgOzy'></sub></form><legend id='xgOzy'></legend><bdo id='xgOzy'><pre id='xgOzy'><center id='xgOzy'></center></pre></bdo></b><th id='xgOzy'></th></span></q></dt></tr></i><div id='xgOzy'><tfoot id='xgOzy'></tfoot><dl id='xgOzy'><fieldset id='xgOzy'></fieldset></dl></div>
      <tfoot id='xgOzy'></tfoot><legend id='xgOzy'><style id='xgOzy'><dir id='xgOzy'><q id='xgOzy'></q></dir></style></legend>
      1. <small id='xgOzy'></small><noframes id='xgOzy'>

        为类依赖关系生成图形数据的工具

        Tool to generate graph data for class dependencies(为类依赖关系生成图形数据的工具)
          <tbody id='26cTP'></tbody>
        <tfoot id='26cTP'></tfoot>

        <small id='26cTP'></small><noframes id='26cTP'>

        1. <i id='26cTP'><tr id='26cTP'><dt id='26cTP'><q id='26cTP'><span id='26cTP'><b id='26cTP'><form id='26cTP'><ins id='26cTP'></ins><ul id='26cTP'></ul><sub id='26cTP'></sub></form><legend id='26cTP'></legend><bdo id='26cTP'><pre id='26cTP'><center id='26cTP'></center></pre></bdo></b><th id='26cTP'></th></span></q></dt></tr></i><div id='26cTP'><tfoot id='26cTP'></tfoot><dl id='26cTP'><fieldset id='26cTP'></fieldset></dl></div>
            • <bdo id='26cTP'></bdo><ul id='26cTP'></ul>

              <legend id='26cTP'><style id='26cTP'><dir id='26cTP'><q id='26cTP'></q></dir></style></legend>
                • 本文介绍了为类依赖关系生成图形数据的工具的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  是否有一些工具能够分析 Java 源文件,从中构建图表并以某种标准/可理解的格式提供图表数据?

                  Is there some tool that is able to analyze Java source files, construct a graph from it and provide the graph's data in some standard / understandable format?

                  它绝对不需要 GUI,我更喜欢命令行的东西,这样我就可以通过各种工具(用于分割、可视化等)处理输出.

                  It definitively does not need to have GUI, I'd prefer a command line thing so I can process the output by various tools (for segmentation, visualization,...).

                  推荐答案

                  我不确定命令行工具,但我喜欢使用 ObjectAid 逆向工程到类图:

                  I'm not certain about command line tools, but I like using ObjectAid for reverse engineering into class diagrams:

                  http://www.objectaid.com/

                  您可以轻松地将任何类及其关系添加到 ObjectAid 图表中.它以带有 ucls 扩展名的 XML 格式保存文件.这是一个示例:

                  You can easily add any class with it's relationships to an ObjectAid graph. It saves the file in an XML format with the ucls extension. Here's a sample:

                  <?xml version="1.0" encoding="UTF-8"?>
                  <class-diagram version="1.1.4" icons="true"
                  always-add-relationships="true" generalizations="true" realizations="true"
                  associations="true" dependencies="true" nesting-relationships="true">
                  <class id="1" language="java"
                      name="my.classpath.common.controllers.AuthenticationInterceptor"
                      project="MyProject"
                      file="/SpecialPath/common/controllers/AuthenticationInterceptor.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="205" width="355" x="2222" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="2" language="java"
                      name="my.classpath.common.domain.CompanyAssignmentLocation" project="MyProject"
                      file="/SpecialPath/common/domain/CompanyAssignmentLocation.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="-1" width="-1" x="856" y="399" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="3" language="java"
                      name="my.classpath.common.domain.LocationsSpreadsheetReader" project="MyProject"
                      file="/SpecialPath/common/domain/LocationsSpreadsheetReader.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="115" width="348" x="680" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="4" language="java" name="my.classpath.common.domain.Stock"
                      project="MyProject" file="/SpecialPath/common/domain/Stock.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="439" width="210" x="430" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="5" language="java" name="my.classpath.common.util.FilesUtil"
                      project="MyProject" file="/SpecialPath/common/util/FilesUtil.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="277" width="218" x="1409" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="6" language="java" name="my.classpath.common.util.MyProjectUtil"
                      project="MyProject" file="/SpecialPath/common/util/MyProjectUtil.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="439" width="349" x="41" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="7" language="java" name="my.classpath.common.util.SpringUtil"
                      project="MyProject" file="/SpecialPath/common/util/SpringUtil.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="133" width="246" x="1936" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="8" language="java"
                  name="my.classpath.common.util.MyProjectUserUtil" project="MyProject"
                  file="/SpecialPath/common/util/MyProjectUserUtil.java" binary="false"
                  corner="BOTTOM_RIGHT">
                      <position height="133" width="229" x="1667" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <class id="9" language="java" name="my.classpath.common.util.UnitConversion"
                      project="MyProject" file="/SpecialPath/common/util/UnitConversion.java"
                      binary="false" corner="BOTTOM_RIGHT">
                      <position height="151" width="301" x="1068" y="37" />
                      <display autosize="true" stereotype="true" package="true"
                          initial-value="false" signature="true" accessors="true" visibility="true">
                          <attributes public="true" package="true" protected="true"
                              private="true" static="true" />
                          <operations public="true" package="true" protected="true"
                              private="true" static="true" />
                      </display>
                  </class>
                  <dependency id="10">
                      <end type="SOURCE" refId="3" />
                      <end type="TARGET" refId="2" />
                  </dependency>
                  <classifier-display autosize="true" stereotype="true"
                      package="true" initial-value="false" signature="true" accessors="true"
                      visibility="true">
                      <attributes public="true" package="true" protected="true"
                          private="true" static="true" />
                      <operations public="true" package="true" protected="true"
                          private="true" static="true" />
                  </classifier-display>
                      <association-display labels="true" multiplicity="true" />
                  </class-diagram>
                  

                  您也可以使用 PlantUML,但它更适合正向工程而不是逆向工程:

                  You can also use PlantUML, but it's better for forward engineering than reverse engineering:

                  http://plantuml.sourceforge.net/

                  PlantUML 有自己独特的语法,您也可以从中获取源代码 - 但它不像 ObjectAid 那样容易整合

                  PlantUML has its own unique syntax that you can get source for, too - but it's not nearly as easy to pull together as ObjectAid

                  这两个都作为 eclipse 插件工作,抱歉,我不知道更多关于任何命令行工具可能能够完成您所要求的工作.

                  Both of these work as eclipse plug-ins, sorry that I don't know more about any command line tools that might be able to do what you're asking.

                  这篇关于为类依赖关系生成图形数据的工具的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  How to send data to COM PORT using JAVA?(如何使用 JAVA 向 COM PORT 发送数据?)
                  How to make a report page direction to change to quot;rtlquot;?(如何使报表页面方向更改为“rtl?)
                  Use cyrillic .properties file in eclipse project(在 Eclipse 项目中使用西里尔文 .properties 文件)
                  Is there any way to detect an RTL language in Java?(有没有办法在 Java 中检测 RTL 语言?)
                  How to load resource bundle messages from DB in Java?(如何在 Java 中从 DB 加载资源包消息?)
                  How do I change the default locale settings in Java to make them consistent?(如何更改 Java 中的默认语言环境设置以使其保持一致?)
                  <legend id='OunM8'><style id='OunM8'><dir id='OunM8'><q id='OunM8'></q></dir></style></legend>

                    <tbody id='OunM8'></tbody>
                    <tfoot id='OunM8'></tfoot>

                    <i id='OunM8'><tr id='OunM8'><dt id='OunM8'><q id='OunM8'><span id='OunM8'><b id='OunM8'><form id='OunM8'><ins id='OunM8'></ins><ul id='OunM8'></ul><sub id='OunM8'></sub></form><legend id='OunM8'></legend><bdo id='OunM8'><pre id='OunM8'><center id='OunM8'></center></pre></bdo></b><th id='OunM8'></th></span></q></dt></tr></i><div id='OunM8'><tfoot id='OunM8'></tfoot><dl id='OunM8'><fieldset id='OunM8'></fieldset></dl></div>
                  1. <small id='OunM8'></small><noframes id='OunM8'>

                        <bdo id='OunM8'></bdo><ul id='OunM8'></ul>