【问题标题】:Error while generating UML diagram using plantuml maven plugin使用plantuml maven插件生成UML图时出错
【发布时间】:2021-06-04 20:23:57
【问题描述】:

我正在使用植物 uml maven 插件来生成 UML 图。

  <groupId>com.github.jeluard</groupId>
  <artifactId>plantuml-maven-plugin</artifactId>

但是在生成类图时出现以下错误:

[ERROR] Failed to execute goal com.github.jeluard:plantuml-maven-plugin:1.1:generate (create-docs) on project my-app-docs: Exception during plantuml
process: input == null! -> [Help 1]


java.lang.NullPointerException
        at net.sourceforge.plantuml.svek.image.EntityImageClass.<init>(EntityImageClass.java:79)
        at net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek2.createEntityImageBlock(CucaDiagramFileMakerSvek2.java:368)
        at net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek2.printEntityInternal(CucaDiagramFileMakerSvek2.java:339)
        at net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek2.printEntity(CucaDiagramFileMakerSvek2.java:320)
        at net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek2.printEntities(CucaDiagramFileMakerSvek2.java:312)
        at net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek2.createFile(CucaDiagramFileMakerSvek2.java:146)
        at net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek.createFileInternal(CucaDiagramFileMakerSvek.java:132)
        at net.sourceforge.plantuml.svek.CucaDiagramFileMakerSvek.createFile(CucaDiagramFileMakerSvek.java:105)
        at net.sourceforge.plantuml.cucadiagram.CucaDiagram.exportDiagramInternal(CucaDiagram.java:316)
        at net.sourceforge.plantuml.UmlDiagram.exportDiagram(UmlDiagram.java:224)
        at net.sourceforge.plantuml.PSystemUtils.exportDiagramsCuca(PSystemUtils.java:202)
        at net.sourceforge.plantuml.PSystemUtils.exportDiagrams(PSystemUtils.java:65)
        at net.sourceforge.plantuml.SourceFileReader.getGeneratedImages(SourceFileReader.java:130)
        at com.github.plantuml.maven.PlantUMLMojo.execute(PlantUMLMojo.java:202)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:956)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:194)
        at sun.reflect.NativeMethodAccessorImpl.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:498)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)

更新:-

导致问题的PlantUML代码是

@startuml
title Class Diagram
hide empty methods

class Account {
   accountId
}
@enduml

Maven 插件配置

         <plugin>
            <groupId>com.github.jeluard</groupId>
            <artifactId>plantuml-maven-plugin</artifactId>
            <version>1.1</version>
            <configuration>
               <sourceFiles>
                  <directory>${basedir}/models</directory>
                  <includes>
                     <include>*.puml</include>
                  </includes>
               </sourceFiles>
               <outputDirectory>${basedir}/models/png</outputDirectory>
            </configuration>
            <dependencies>
               <dependency>
                  <groupId>net.sourceforge.plantuml</groupId>
                  <artifactId>plantuml</artifactId>
                  <version>7999</version>
               </dependency>
            </dependencies>
            <executions>
               <execution>
                  <id>create-docs</id>
                  <phase>install</phase>
                  <goals>
                     <goal>generate</goal>
                  </goals>
               </execution>
            </executions>
         </plugin>

Maven 版本 3.3.9
Java : 1.8

【问题讨论】:

  • 您能否发布导致此问题的植物代码以及使用的选项。
  • @albert 我已经添加了plantuml代码和maven插件配置
  • 看到你已经解决了这个问题,很好。总是一个很好的测试是使用 plantuml 代码并使用最新的 plantuml.jar 或在 plantuml Web 服务器上进行尝试:plantuml.com/plantuml/uml

标签: maven-plugin plantuml


【解决方案1】:

我已经通过更新plantuml artifact的版本解决了这个问题:)

com.github.jeluard:plantuml-maven-plugin 带有版本 1.2
net.sourceforge.plantuml:plantuml 带有版本 8059

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-27
    • 1970-01-01
    • 2016-08-31
    • 1970-01-01
    • 1970-01-01
    • 2011-03-10
    • 2017-10-04
    • 1970-01-01
    相关资源
    最近更新 更多