Starting the xUML Model Compiler from Command Line
Builder 7.0.0-beta1 You can invoke the xUML Model Compiler from command line. This is needed, if you want to e.g. integrate the model compilation into a continuous integration server such as Jenkins.
Call the xUML Command Line Compiler like:
java -jar xumlc.jar [-clean] -uml <path to an UML model file>
e.g. java -jar xumlc.jar -clean -uml "C:\E2E Documentation\Basic Modeling\Frontend\uml\helloWorld.xml".
If called without parameters, the xUML Command Line Compiler will print out the usage.
Parameters
You can use the following parameters to call the Command Line Compiler:
Parameter | Mandatory | Description | Example |
---|---|---|---|
-clean | Perform a clean all before compiling the model. |
| |
-uml | Specify the path to the UML model you want to compile. |
|
Output
The Command Line Compiler has the following output:
Case | Return Value | Output |
---|---|---|
start | 23.01.2018 14:46:07 Starting compilation of 'helloWorld.xml' deployments | |
compilation successful | 0 | 23.01.2018 14:46:20 Compilation succeeded and took 12 seconds. |
compilation with warnings | 0 | 23.01.2018 16:16:19 Found unused input object 'x1' |
compilation with errors | 1 |
23.01.2018 14:51:39 The action 'Create Simple Object' has no incoming control flow. |
compiled repository | The compiled repository will be saved to the repository folder of the Builder project (if called in E2E Builder project context), otherwise the current directory will be used. |
Compiling Libraries and Library Usage Models
Compiling library models does not differ in any way from compiling models. However, if you want to compile the library and the library usage model, take into account that you need to copy the compiled library to the libs folder of the E2E Builder project before compiling the usage model.
java -jar xumlc.jar -clean -uml "C:\E2E Documentation\Advanced Modeling\E2ELibrary\uml\librarySQLQuery.xml"
copy "C:\E2E Documentation\Advanced Modeling\E2ELibrary\repository\librarySQLQuery\librarySQLQuery.xml.lrep "C:\E2E Documentation\Advanced Modeling\E2ELibrary\libs\"
java -jar xumlc.jar -clean -uml "C:\E2E Documentation\Advanced Modeling\E2ELibrary\uml\useLibrarySQLQuery.xml"
If you do not copy the newly compiled repository in between, the usage model will be compiled with the old library repository from libs.
Please note that copying a compiled library is not the same as doing an import. If the interface of the library changes, you need to do an import of the library to the usage model. The procedure described above is sufficient, if the implementation of the library has changed.