Java-Klassen aus PlantUML erstellen

pseudopseudonym

Admiral
Registriert
Mai 2017
Beiträge
9.676
Servus!

Kennt hier jemand einen Weg, um aus einem PlantUML-Diagramm Java-Klassen zu erstellen?
Natürlich nicht implementiert, nur die Ordner- und Paketstruktur und die Signaturen der Funktionen.
 
Den bekomme ich irgendwie nicht zum Laufen.

Und ja, UML ist tot. Wie du dir denken kannst, ist das nicht für die Arbeit (mein Chef würde mich schlagen... :D), sondern für die Uni.
Dass UML tot ist, interessiert da nicht, weil das da schon immer so lief.
 
Tja, bekomm ich nicht zu laufen ist halt echt ne feine Fehlermeldung. Ich mein das ist jetzt kein besonders dickes Stück Software, schau da doch mal selbst rein und fix es ggf, da lernste direkt noch was mehr als mit ner blöden UML Uni Aufgabe ;)
 
Sorry, der Frust über diese Sch.... hat mich etwas schluderig werden lassen, die Hitze kommt dazu. Ich werde mich umgehend um Kühlflüssigkeit kümmern :D

So sieht die Fehlermeldung aus:
Code:
$ plantcode -l java plantuml.txt
Error parsing input file:
plantuml.txt
{ SyntaxError: Expected [ \t:], [ \t], [A-Za-z_] or [^ ,\n\r\t(){}] but "{" found.
    at peg$buildException (/home/user/Pictures/PSE/Klassendiagram/codegenerator/plantuml-code-generator/src/plantuml.js:370:14)
    at Object.peg$parse [as parse] (/home/user/Pictures/PSE/Klassendiagram/codegenerator/plantuml-code-generator/src/plantuml.js:3641:13)
    at processInputFile (/home/user/Pictures/PSE/Klassendiagram/codegenerator/plantuml-code-generator/plantcode:153:29)
    at /home/user/Pictures/PSE/Klassendiagram/codegenerator/plantuml-code-generator/plantcode:120:7
    at FSReqWrap.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:53:3)
  message:
   'Expected [ \\t:], [ \\t], [A-Za-z_] or [^ ,\\n\\r\\t(){}] but "{" found.',
  expected:
   [ { type: 'class', value: '[ \\t:]', description: '[ \\t:]' },
     { type: 'class', value: '[ \\t]', description: '[ \\t]' },
     { type: 'class', value: '[A-Za-z_]', description: '[A-Za-z_]' },
     { type: 'class',
       value: '[^ ,\\n\\r\\t(){}]',
       description: '[^ ,\\n\\r\\t(){}]' } ],
  found: '{',
  location:
   { start: { offset: 27, line: 3, column: 4 },
     end: { offset: 28, line: 3, column: 5 } },
  name: 'SyntaxError' }

Wenn ich die Datei ganz weit abspecke (nur noch ganz einfache Klassen), geht's in die Richtung:
Code:
$ plantcode -l java plantuml.txt
Unable to read template file for java.
Bei coffeescript (das Beispiel aus GIT) das gleiche Prolem.

Andere Programme, die XMI nutzen können (kann man aus PlantUML exportieren) sind prähistorisch und verweigern ebenfalls ihren Dienst.
Ergänzung ()

Ach, dann machen wir das von Hand. Eh wir hier uralte Java-Versionen für die XMI-Tools zum Laufen bringen oder irgendwelche Tools fixen, ist das wohl das Beste.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: deveth0
deveth0 schrieb:
Damit hab ich das irgendwann mal gemacht, aber ist UML nicht tot?

UML ist alles andere als tot. Wer mal in grossen Firmen, oder Regierungsabteilungen gearbeitet hat, der wird mit UML viel gearbeitet haben. Das wird nicht nur zur Codegeneration benutzt, auch fuer das Design und Dokumentieren von Projekten. Je nachdem, kann das UML programm die komplette dokumentation fuer dich erstellen. Muss ja nicht nur was mit programmierunge zu tun haben in UML. Kannst dich mal in NIEM-UML einlesen, da kommst du vor lauter UML diagrammen nicht mehr zurecht. Anstatt XSD zum Datenaustausch nimmt man halt UML.
 
Zurück
Oben