## How to get started 1. You will need a Java JDK installed. Be mindful of which version you install. - Ignition platform 7 requires a Java 1.8 JDK - Ignition platform 8 requires a Java 11 JDK You have several options when it comes to JDKs. Popular options are: - [Azul JDK Downloads](https://www.azul.com/downloads/zulu-community/?&package=jdk) - [Java JDK Downloads](http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html) page. 1. You will need Maven 3.+ installed. * **Linux** users can use their package manager to install at the command line (example for apt package management `sudo apt-get install maven`) * **OSX** users using brew can `brew install maven`. * **Windows** users can install via [Chocolatey](https://chocolatey.org/) (`choco install maven`) or by downloading the installer at the [Maven downloads](http://maven.apache.org/download.cgi_) page. 1. You will want a running version of Ignition to test your module in. If you don't already have Ignition installed head to the Inductive Automation [downloads](https://www.inductiveautomation.com/downloads/) page, download the correct package for your system and follow the installation instructions to get a gateway up and running. 1. Make sure [Git is installed](https://git-scm.com/downloads) 1. Once you have configured your developer gateway, clone this repo to a directory of your choice: ```git clone https://github.com/inductiveautomation/ignition-sdk-examples.git``` 1. Using your IDE of choice, you should be able to create or open any of these included Example Modules through the parent pom.xml file located in the root of each example. Upon importing this project into your IDE, it should download (if auto-import is on) Maven dependencies from the Inductive Automation artifact repository. Dependencies are managed through Maven and are cached to your local environment after they are downloaded. 1. Once all dependencies are cached, open a terminal/command line, and navigate to any one of the examples: %\ignition-sdk-examples\AbstractTagDriverExample 1. Run `mvn package`. This will generate a *.modl* file (which will be created in the `build\target\` directory of the example). The modl file is the Ignition module file you install. The resulting module is unsigned, and thus can only be installed onto an Ignition Gateway set to Developer Mode. However, you could [sign the module](https://docs.inductiveautomation.com/display/SE/Module+Signing), which would allow it to be installed on non-developer gateways. Details on installing a module can be found in the [Ignition User Manual](https://docs.inductiveautomation.com/display/DOC79/Installing+or+Upgrading+a+Module). 1. You should now be able to see your module installed and running! ## The Module Build System These examples utilize Maven and our Maven Plugin. The ignition-maven-plugin is available through our [Nexus Repository](http://nexus.inductiveautomation.com:8081/nexus/content/repositories/inductiveautomation-releases) (see examples for how to add to depenency sources). While the SDK documentation is a great start, the pom files in these examples should prove useful tools to new module developers.