State Machine Compiler (SMC) Maven Plugin

Fork of State Machine Compiler (SMC). It generates state machines.

License

License

Categories

Categories

Maven Build Tools
GroupId

GroupId

uk.camsw.smc
ArtifactId

ArtifactId

smc-maven-plugin
Last Version

Last Version

6.4.0
Release Date

Release Date

Type

Type

maven-plugin
Description

Description

State Machine Compiler (SMC) Maven Plugin
Fork of State Machine Compiler (SMC). It generates state machines.

Download smc-maven-plugin

How to add to project

<plugin>
    <groupId>uk.camsw.smc</groupId>
    <artifactId>smc-maven-plugin</artifactId>
    <version>6.4.0</version>
</plugin>

Dependencies

compile (9)

Group / Artifact Type Version
org.apache.maven : maven-project jar 2.0
uk.camsw.smc : smc-core jar 6.4.0
uk.camsw.smc : smc-model jar 6.4.0
uk.camsw.smc : smc-generator jar 6.4.0
uk.camsw.smc : smc-parser jar 6.4.0
uk.camsw.smc : smc-lib-java jar 6.4.0
org.codehaus.plexus : plexus-utils jar 1.0.4
org.apache.maven.reporting : maven-reporting-impl jar 2.0
commons-lang : commons-lang jar 2.1

test (1)

Group / Artifact Type Version
junit : junit jar 3.8.1

Project Modules

There are no modules declared in this project.

State Machine Compiler

This project forked https://github.com/orolle/SMC, primarily so the artifacts are published to maven central

<project>
  ...
  <packaging>jar</packaging>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>com.github.orolle</groupId>
        <artifactId>smc-maven-plugin</artifactId>
        <executions>
           <execution>
              <goals>
                 <goal>smc</goal>
              </goals>
           </execution>
        </executions>
        <configuration>
          <verbose>true</verbose>
          <sync>true</sync>
          ...
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

Put your sm-files in the "src/main/smc"-folder of your project root. Compile the sm-files to java-classes through executing "mvn smc:smc". The generated classes are found in "target/generated-sources/smc"-folder. The plugin is in an early and buggy version. Please use it with caution and on your own risk.

To execute the compiled java-classes include the maven dependency in your pom.xml

<dependency>
  <groupId>uk.camsw.smc</groupId>
  <artifactId>smc-lib-java</artifactId>
  <version>6.4.0</version>
</dependency>

For modelling finite state machines with SMC please see http://smc.sourceforge.net/SmcManual.htm A good and dense slide-based tutorial is found here http://smc.sourceforge.net/slides/SMC_Tutorial.pdf

Versions

Version
6.4.0