# 8.3 module development experience

**URL:** <https://forum.inductiveautomation.com/t/8-3-module-development-experience/109445>\
**Category:** Ignition 8.3 Early Access\
**Created:** [August 6, 2025, 8:58pm UTC](https://forum.inductiveautomation.com/t/8-3-module-development-experience/109445 "2025-08-06T20:58:53Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Joost\_t](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@Joost\_t](https://forum.inductiveautomation.com/u/Joost_t)\
**Post date:** [August 6, 2025, 8:58pm UTC](https://forum.inductiveautomation.com/t/8-3-module-development-experience/109445/1 "2025-08-06T20:58:53Z")

</div>

Hi all,

I've been able to build an Ignition 8.3 module. During development I often have to adjust the code to get to a final solution.

With 8.1 I was able to use ‘gradlew build deployModl’ to streamline this process. However this no longer works with 8.3. I suspect that this is due to the fact that each module install/update requires a restart.

Are there other ways to steamline module development like for instance code hot reloading that you guys are using?

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [August 6, 2025, 9:12pm UTC](https://forum.inductiveautomation.com/t/8-3-module-development-experience/109445/2 "2025-08-06T21:12:55Z")

</div>

In theory, the same general approach outlined in [this thread](https://forum.inductiveautomation.com/t/programmatically-update-third-party-modules/104408) for client/designer launches from your IDE would work.

In practice there'll be some back and forth for whichever intrepid soul decides to try this first. Maybe if I get some time (hah) I'll see if I can come up with a gateway launcher repo.

In the meantime, I'll say that the main class to launch is `com.inductiveautomation.catapult.Catapult`, and the list of VM options I'm using out of the IDE is:

```python
-ea
-Xms8G
-Xmx8G
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.security.cert=ALL-UNNAMED
--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED
-Dignition.allowunsignedmodules=true
-Dignition.gateway.resourceOverrideFile=/Users/pgriffith/Projects/ignition-8.3/config/resources/resource-config.json
-Dignition.gateway.systemJsOverrideFile=/Users/pgriffith/Projects/ignition-8.3/config/resources/systemjs-config.json
-Dres.path.com.inductiveautomation.perspective.themes=/Users/pgriffith/Projects/ignition-8.3/Modules/perspective/perspective-themes/src/main/css
-Dperspective.gateway.disableClientCaching=true
-Dreporting.gateway.disableClientCaching=true
-Djava.library.path=/Users/pgriffith/Projects/ignition-8.3/IDE-Launchers/gateway-launcher/src/main/home/lib/core/gateway
-Dignition.webserver.exposeErrorDetails=true

```

You'll have to come up with your own Maven/Gradle 'subproject' to get the IDE to give you all the gateway and common dependencies on one classpath, and I have no idea how loading modules would work out. You'll also need to either point it at a valid installation or recreate the basic directory structure of a valid installation.
