In theory, the same general approach outlined in this thread 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:
-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.