When having the following example:
@startnwdiag
vlan1 [shape = cloud];
network vlan1{
address = "192.168.168.0/24"
vlan1;
Switch4;
}
network {
Switch4 [address = "port1/04"];
Device1 [address = "192.168.168.1"];
}
@endnwdiag
platuml (version 1.2021.7beta1) crashes with the following:
java.lang.IllegalStateException
at net.sourceforge.plantuml.error.PSystemErrorUtils.merge(PSystemErrorUtils.java:74)
at net.sourceforge.plantuml.PSystemBuilder.createPSystem(PSystemBuilder.java:142)
at net.sourceforge.plantuml.BlockUml.getDiagram(BlockUml.java:163)
at net.sourceforge.plantuml.SourceFileReaderAbstract.getGeneratedImages(SourceFileReaderAbstract.java:149)
at net.sourceforge.plantuml.Run.manageFileInternal(Run.java:546)
at net.sourceforge.plantuml.Run.processArgs(Run.java:430)
at net.sourceforge.plantuml.Run.manageAllFiles(Run.java:397)
at net.sourceforge.plantuml.Run.main(Run.java:206)
Exception in thread "main" java.lang.IllegalStateException
at net.sourceforge.plantuml.error.PSystemErrorUtils.merge(PSystemErrorUtils.java:74)
at net.sourceforge.plantuml.PSystemBuilder.createPSystem(PSystemBuilder.java:142)
at net.sourceforge.plantuml.BlockUml.getDiagram(BlockUml.java:163)
at net.sourceforge.plantuml.Run.manageFileInternal(Run.java:555)
at net.sourceforge.plantuml.Run.processArgs(Run.java:430)
at net.sourceforge.plantuml.Run.manageAllFiles(Run.java:397)
at net.sourceforge.plantuml.Run.main(Run.java:206)
Though when having:
@startuml
nwdiag {
vlan1 [shape = cloud];
network vlan1{
address = "192.168.168.0/24"
vlan1;
Switch4;
}
network {
Switch4 [address = "port1/04"];
Device1 [address = "192.168.168.1"];
}
}
@enduml
the diagram is created, but this is a bit inconvenient in automatically generated code and plantuml should not crash like this.