-
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 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>