-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
HansvdLaan edited this page Apr 24, 2018
·
29 revisions
Before we can start, we have to install HermieLab into our local Maven repository so we can use it in our projects.
Step 1: Clone the HermieLab repository
Step 2: Run the mvn clean install
command
From this point on, we can use HermieLab in our projects. Just include the dependencies shown below in your projects, place the [JFLAP jar](some download like) in your resource folder, reimport and then you're ready to go!
<!-- For the annotations -->
<dependency>
<groupId>hansvdlaan.hermielab</groupId>
<artifactId>annotations</artifactId>
<version>0.1-SNAPSHOT</version>
</dependency>
<!-- For the annotation proccessors generating the settings file and
the learning setups -->
<dependency>
<groupId>hansvdlaan.hermielab</groupId>
<artifactId>processor</artifactId>
<version>0.1-SNAPSHOT</version>
</dependency>
<!-- For the learning setups -->
<dependency>
<groupId>hansvdlaan.hermielab</groupId>
<artifactId>core</artifactId>
<version>0.1-SNAPSHOT</version>
</dependency>
<!-- For the bytecode injections-->
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.20.0-GA</version>
</dependency>
<!-- For the NFA checking-->
<dependency>
<groupId>Jflap</groupId>
<artifactId>Jflap</artifactId>
<version>1.7.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/resources/jflaplib-cli-1.3-bundle.jar</systemPath>
</dependency>
<dependencyManagement>
<dependencies>
<!--
Import all dependencies declared by LearnLib. This also
imports all automatalib dependencies in a matching
version.
-->
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-parent</artifactId>
<version>0.12.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- Basic LearnLib functionalities -->
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-core</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-counterexamples</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-basic-eqtests</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-simulator</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-drivers-basic</artifactId>
</dependency>
<!-- A cache filter eliminates duplicate queries -->
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-cache</artifactId>
</dependency>
<!-- Dependencies for commonly used learning algorithms -->
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-lstar-generic</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-ttt</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-dhc</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-discrimination-tree</artifactId>
</dependency>
<dependency>
<groupId>de.learnlib</groupId>
<artifactId>learnlib-kearns-vazirani</artifactId>
</dependency>
<!-- Example automata that ship with LearnLib -->
<dependency>
<groupId>de.learnlib.testsupport</groupId>
<artifactId>learnlib-learning-examples</artifactId>
<scope>compile</scope>
</dependency>
<!-- For visualization purposes -->
<dependency>
<groupId>net.automatalib</groupId>
<artifactId>automata-commons-dotutil</artifactId>
</dependency>
</dependencies>