簡體   English   中英

使用 Maven 插件將 IntelliJ UML 圖轉換為 PNG

[英]IntelliJ UML diagrams to PNG using Maven plugin

是否可以制作一個 Maven 插件來將輸出的 XML 從 IntelliJ 轉換為 target 中某個目錄中的 PNG。 會很好,因為這些圖表在全新安裝后將始終是最新的。 使用 Maven 站點發布它們會很好,這將使此文檔成為構建/發布的一部分。

或者,如果有人提供將 XML 轉換為 PNG 的 Java 代碼(在 IntelliJ 的當前 UI 中可以通過按導出到文件來實現),那么我可以自己制作 Maven 插件。

IntelliJ 的輸出 XML 文件示例

<?xml version="1.0" encoding="UTF-8"?>
<Diagram>
  <ID>JAVA</ID>
  <OriginalElement />
  <nodes>
    <node x="0.0" y="980.0">com.example.module.tree.domain.SomeThingTreeConfigurationException</node>
    <node x="578.0" y="628.0">com.example.module.tree.logic.impl.FixedTreeConfigTopic</node>
    <node x="722.0" y="255.0">com.example.module.tree.logic.impl.FixedTreeSomeThingTreeProviderProducer</node>
    <node x="0.0" y="276.0">com.example.module.tree.logic.impl.FixedTreeSomeThingTreeProvider</node>
    <node x="722.0" y="0.0">com.example.module.tree.api.SomeThingTreeProviderProducer</node>
    <node x="743.5" y="114.0">com.example.module.tree.api.ConfigurableSomeThingTreeProviderProducer</node>
    <node x="0.0" y="628.0">com.example.module.tree.domain.SomeThingTreeConfiguration</node>
    <node x="33.0" y="0.0">com.example.module.tree.api.SomeThingTreeProvider</node>
  </nodes>
  <notes />
  <edges>
    <edge source="com.example.module.tree.api.ConfigurableSomeThingTreeProviderProducer" target="com.example.module.tree.api.SomeThingTreeProviderProducer">
      <point x="0.0" y="-45.5" />
      <point x="0.0" y="32.0" />
    </edge>
    <edge source="com.example.module.tree.logic.impl.FixedTreeSomeThingTreeProvider" target="com.example.module.tree.api.SomeThingTreeProvider">
      <point x="0.0" y="-153.5" />
      <point x="0.0" y="113.0" />
    </edge>
    <edge source="com.example.module.tree.logic.impl.FixedTreeSomeThingTreeProviderProducer" target="com.example.module.tree.api.ConfigurableSomeThingTreeProviderProducer">
      <point x="0.0" y="-59.0" />
      <point x="0.0" y="45.5" />
    </edge>
  </edges>
  <settings layout="Hierarchic Group" zoom="1.0" x="257.0" y="253.0" />
  <SelectedNodes>
    <node>com.example.module.tree.logic.impl.FixedTreeConfigTopic</node>
  </SelectedNodes>
  <Categories>
    <Category>Methods</Category>
  </Categories>
  <SCOPE>All</SCOPE>
  <VISIBILITY>private</VISIBILITY>
</Diagram>

我看到這個問題已經有幾年了,但我想我會將我的替代 Javadoc Doclet 添加到其他有相同問題的現有答案中,因為我還沒有找到另一個適用於 Javadoc 9 和更新版本的 doclet。

我的是,你可以在這里找到它: https : //github.com/talsma-ict/umldoclet

如果更多人可以嘗試並報告反饋,那就太好了。

自己還沒有嘗試過,但也許您正在尋找https://github.com/gboersma/uml-java-doclet

您建議的方法會使您的構建管道依賴於您的 IDE,我認為這不是一個好主意。 大多數開發人員都希望能夠自由選擇他們的工具。

我確實找到了一些生成 UML 類圖的 Maven 插件。 希望有幫助。

或者,您可以在源代碼中添加一個命令行工具(將其檢查到您的版本控制系統中)並使用exec-maven-plugin來運行它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM