Hi,
For those dealing with complex, professional-grade diagrams, this could represent one of the most frustrating bugs in PlantUML
Thanks in advance for your help
@startuml (id=CLASS_DG)titleclass diagram %version()end title'skinparam Linetype orthoallow_mixing!$container=packageclass LeftClassclass RightClassclass UpClassclass DownClassclass CenterClassCenterClass -left-> LeftClassCenterClass -right-> RightClassCenterClass -up-> UpClassCenterClass -down-> DownClass$container ContainerLeft as C1 {class LeftClass}$container ContainerRight as C2 {class RightClass}$container ContainerUp as C3 {class UpClass}$container ContainerDown as C4 {class DownClass}$container CenterClass2CenterClass2 -left-> C1CenterClass2 -right-> C2CenterClass2 -up-> C3CenterClass2 -down-> C4@enduml@startuml (id=COMP_DG)titlecomponent diagram %version()end title'package node folder frame cloud database!$container=database[Component] -left-> [left][Component] -right-> [right][Component] -up-> [up][Component] -down-> [down]$container center$container ContainerLeft as C1 {[cleft]}$container ContainerRight as C2 {[cright]}$container ContainerUp as C3 {[cup]}$container ContainerDown as C4 {[cdown]}center -left-> C1center -right-> C2center -up-> C3center -down-> C4@enduml
@startuml (id=CLASS_DG)
title
class diagram %version()
end title
'skinparam Linetype ortho
allow_mixing
!$container=package
class LeftClass
class RightClass
class UpClass
class DownClass
class CenterClass
CenterClass -left-> LeftClass
CenterClass -right-> RightClass
CenterClass -up-> UpClass
CenterClass -down-> DownClass
$container ContainerLeft as C1 {
}
$container ContainerRight as C2 {
$container ContainerUp as C3 {
$container ContainerDown as C4 {
$container CenterClass2
CenterClass2 -left-> C1
CenterClass2 -right-> C2
CenterClass2 -up-> C3
CenterClass2 -down-> C4
@enduml
@startuml (id=COMP_DG)
component diagram %version()
'package node folder frame cloud database
!$container=database
[Component] -left-> [left]
[Component] -right-> [right]
[Component] -up-> [up]
[Component] -down-> [down]
$container center
[cleft]
[cright]
[cup]
[cdown]
center -left-> C1
center -right-> C2
center -up-> C3
center -down-> C4
@startuml (id=UC_DG)titleusecase diagram %version()end title'skinparam Linetype ortho!$container=rectangle:user1: -left-> (UCLeft):user1: -right-> (UCRight):user1: -up-> (UCUp):user1: -down-> (UCDown)$container ContainerLeft as R1 {usecase "some use case" as R1_UC1}$container ContainerRight as R2 {usecase "some use case" as R2_UC1}$container ContainerUp as R3 {usecase "some use case" as R3_UC1}$container ContainerDown as R4 {usecase "some use case" as R4_UC1}$container CenterCenter -left-> R1Center -right-> R2Center -up-> R3Center -down-> R4@enduml
@startuml (id=UC_DG)
usecase diagram %version()
!$container=rectangle
:user1: -left-> (UCLeft)
:user1: -right-> (UCRight)
:user1: -up-> (UCUp)
:user1: -down-> (UCDown)
$container ContainerLeft as R1 {
usecase "some use case" as R1_UC1
$container ContainerRight as R2 {
usecase "some use case" as R2_UC1
$container ContainerUp as R3 {
usecase "some use case" as R3_UC1
$container ContainerDown as R4 {
usecase "some use case" as R4_UC1
$container Center
Center -left-> R1
Center -right-> R2
Center -up-> R3
Center -down-> R4
I wanted to test ELK layout engine
from documentation :
ELK is distributed as an independent library. So you have to build it yourself, or you can download the complete jar file here.Both plantuml.jar and elk-full.jar have to be in the very same folder. You cannot rename elk-full.jarOnce installed, you can invoke ELK instead of GraphViz with the !pragma layout elk directive.
ELK is distributed as an independent library. So you have to build it yourself, or you can download the complete jar file here.
Both plantuml.jar and elk-full.jar have to be in the very same folder. You cannot rename elk-full.jar
Once installed, you can invoke ELK instead of GraphViz with the !pragma layout elk directive.
But My ecosystem uses a local plantuml server and I don't know how to make it work.
the command is :
mvn -DPLANTUML_SECURITY_PROFILE=ALLOWLIST -Dplantuml.include.path=/my/path/ -Dplantuml.allowlist.url=http://127.0.0.1:3001/ jetty:run
And I have a java.lang.IllegalArgumentException: java.lang.ClassNotFoundException: org.eclipse.elk.graph.util.ElkGraphUtil
The documentation gives info when we use the jar :
java -jar plantuml.jar -Playout=elk
But What should I do in my context ?
Thanks a lot if you can help me there too.
Thanks,
Kasra
(--------)