useSmetana
Description
With this configuration toggle you can activte smetana as replacement for GraphViz/Dot for layouting (see smetana-documentation ).
Example
In the following example there are three dependencies in the maven dependency hierarchy which build the classpath for all further generation:
<dependencies>
<dependency>
<groupId>de.elnarion.util</groupId>
<artifactId>plantuml-generator-util</artifactId>
<version>@project.version@</version>
<classifier>tests</classifier>
<type>test-jar</type>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.16.1</version>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>javax.persistence-api</artifactId>
<version>2.2</version>
</dependency>
</dependencies>
From this classpath all classes of the package "de.elnarion.test.domain.t0027", which are also used by the JUnit-tests of the PlantUML generator utility, should be generated as class diagram with the following plugin configuration:
<plugin>
<artifactId>plantuml-generator-maven-plugin</artifactId>
<groupId>de.elnarion.maven</groupId>
<version>@project.version@</version>
<executions>
<execution>
<id>generate-simple-diagram</id>
<goals>
<goal>generate</goal>
</goals>
<phase>generate-test-sources</phase>
<configuration>
<useSmetana>true</useSmetana>
<outputFilename>testdiagram1.txt</outputFilename>
<scanPackages>
<scanPackage>de.elnarion.test.domain.t0027</scanPackage>
</scanPackages>
</configuration>
</execution>
</executions>
</plugin>
and with this configuration smetana should be used instead of GraphViz/Dot for layouting. This configuration leads to this diagram:
![0027_use_smetana_diagram](../../_images/0027_use_smetana_diagram-7678b40cfa701481ffc6e1f2396e8a58d0cc77bf.png)
and produces this PlantUML diagram text:
@startuml
!pragma layout smetana
class de.elnarion.test.domain.t0027.TestClass {
{field} -testString : String
}
@enduml