# Adding java custom classes to Ignition

**URL:** <https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202>\
**Category:** General Discussion\
**Tags:** ignition79, sdk, scripting\
**Created:** [August 30, 2017, 3:06pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202 "2017-08-30T15:06:37Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![pgmo](https://avatars.discourse-cdn.com/v4/letter/p/d07c76/32.png) [@pgmo](https://forum.inductiveautomation.com/u/pgmo)\
**Post date:** [August 30, 2017, 3:06pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/1 "2017-08-30T15:06:37Z")

</div>

Hi all,  
not sure if I am in the right forum section, maybe I should post in the module development section.  
Anyway: what I’d like to do is to add java classes of my own to the scripting system. The same way I can use the **java.util.Date** class by just writing  
`from java.util import Date`  
I’d like to be able to write  
`from myPackage import myClass`  
and then use the static methods in there.  
Is that possilbe? Should I use the sdk?

Thanks in advance, regards

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [August 30, 2017, 3:17pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/2 "2017-08-30T15:17:45Z")

</div>

The only way to do this is to drop your jar files into the `lib/core/gateway`, `lib/core/client`, `lib/core/designer`, or `lib/core/common` folders, depending on the scope you want to be able to access them in. Putting them in common should make them available everywhere. The downside is that these are not part of the backup or preserved in any way, so you need to make sure your jars are always added to those locations in new gateways, etc… on your own.

disclaimer: this is not officially supported and there are no guarantees this will continue working in the future.

If you go the module route you can add your own scripting functions but the classes your module uses won’t be in the right class loader to use the way you’re asking.

---

<div class="post-metadata">

**Author:** ![pgmo](https://avatars.discourse-cdn.com/v4/letter/p/d07c76/32.png) [@pgmo](https://forum.inductiveautomation.com/u/pgmo)\
**Post date:** [September 4, 2017, 2:41pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/3 "2017-09-04T14:41:40Z")

</div>

Hello Kevin,  
thanks for your answer. I did some tests, unfortunately with no success.  
Using Eclipse, I wrote a simple class named `Communicator` in the `pg_net_test` package:  
 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/0/0a06de8552dcb248905ee4445779d60ea3e5414f.png)

I exported then my Java project in the `net_test.jar` file  
 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/0/0b7d4ebcac51f9fca815b41aa31d92cff5fb4475.png)

I tried copying that file to each one of the folder you suggested and programmed a button script in the designer just like this:  
 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/d/d20ac6a74da2ef670da924fb050e1e1ee20c3dc1.png)

What I get is the following error:  
 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/2/267da948dceb8d3184d0ec5d939bd359c4b1916c.png)

Same error if I write `from net_test import Communicator`.

Any suggestion? Where am I doing wrong?

Thanks in advance, regards

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [September 4, 2017, 2:43pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/4 "2017-09-04T14:43:15Z")

</div>

Did you restart the gateway afterwards?

---

<div class="post-metadata">

**Author:** ![pgmo](https://avatars.discourse-cdn.com/v4/letter/p/d07c76/32.png) [@pgmo](https://forum.inductiveautomation.com/u/pgmo)\
**Post date:** [September 4, 2017, 3:15pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/5 "2017-09-04T15:15:08Z")

</div>

Hi Kevin, I did some more tests: I coded some python in the shared library:  
 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/c/cdcad9f7eddd5dc23949e7516dd5d83f005140cd.png)

If the `testNet()` function is called in a tag `Value Changed` event, it works; it does not work if I call it from a button on a graphic page, even if the `net_test.jar` file is in the **Gateway** , **Designer** and **Client** folders and I restarted the gateway service.

That could be enough for me just now, but I would like to understand why it is not working in the Designer and/or Client scope.

Many thanks, regards

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [September 4, 2017, 3:42pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/6 "2017-09-04T15:42:06Z")

</div>

Ah, in order for client/designer scoped jars to get loaded you have to run the pack200 tool on the jar first. You’ll notice those directories are full of jar.pack.gz files - these are packed jars.

If you want to use the jar in all scopes, then the easiest approach is to put both a packed and unpacked copy of the jar into the lib/core/common folder.

---

<div class="post-metadata">

**Author:** ![pgmo](https://avatars.discourse-cdn.com/v4/letter/p/d07c76/32.png) [@pgmo](https://forum.inductiveautomation.com/u/pgmo)\
**Post date:** [September 4, 2017, 4:20pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/7 "2017-09-04T16:20:13Z")

</div>

Many thanks, I will give it a try.

Regards

---

<div class="post-metadata">

**Author:** ![pgmo](https://avatars.discourse-cdn.com/v4/letter/p/d07c76/32.png) [@pgmo](https://forum.inductiveautomation.com/u/pgmo)\
**Post date:** [September 12, 2017, 10:36am UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/8 "2017-09-12T10:36:22Z")

</div>

Hallo Kevin, thank you very much: you solved my problems.  
I have one more question: if my JAR library depends on another JAR library, where should I place the dependancy library?  
Honestly I did not try yet: maybe it is enough to place that library in the Gateway folder too.

Thanks, regards

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [September 12, 2017, 2:10pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/9 "2017-09-12T14:10:58Z")

</div>

You would put the dependency jars in the same place.

---

<div class="post-metadata">

**Author:** ![ryanjmclaughlin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ryanjmclaughlin/32/4318_2.png) [@ryanjmclaughlin](https://forum.inductiveautomation.com/u/ryanjmclaughlin)\
**Post date:** [September 12, 2017, 3:45pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/10 "2017-09-12T15:45:30Z")

</div>

This is great, just got some custom interface libraries to our MES working using this method. Will let me get rid of some custom scripting I built.

---

<div class="post-metadata">

**Author:** ![brandon1](https://avatars.discourse-cdn.com/v4/letter/b/ea666f/32.png) [@brandon1](https://forum.inductiveautomation.com/u/brandon1)\
**Post date:** [April 4, 2018, 6:44pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/11 "2018-04-04T18:44:55Z")

</div>

I have been trying to add the Apache POI jar to my gateway using this method, but when I run a button with the following code under it:

`import org.apache.poi.xssf.usermodel.XSSFWorkbook`

I get the following error:  
Traceback (most recent call last):

File “event:mousePressed”, line 1, in

ImportError: No module named poi

Ignition v7.9.6 (b2018012914)  
Java: Oracle Corporation 1.8.0\_161

I have both the packed and normal jar file under the common folder for the Ignition gateway. I also restarted the gateway multiple times but nothing has changed.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [April 4, 2018, 7:15pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/12 "2018-04-04T19:15:19Z")

</div>

> [@brandon1](#):
>
> I have both the packed and normal jar file under the common folder for the Ignition gateway. I also restarted the gateway multiple times but nothing has changed.

Did you restart the Designer/Client? Running code in a button press is going to run it in those scopes, not the gateway.

Turn on the Java Console and launch the Client/Designer, see if your jar file is being downloaded.

---

<div class="post-metadata">

**Author:** ![brandon1](https://avatars.discourse-cdn.com/v4/letter/b/ea666f/32.png) [@brandon1](https://forum.inductiveautomation.com/u/brandon1)\
**Post date:** [April 4, 2018, 7:16pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/13 "2018-04-04T19:16:37Z")

</div>

Yes. I am trying to run this in the designer and I cleared the cache to see if that did anything. I will look at the Java Console.

UPDATE:  
This is the console output:

```auto
Java Web Start 11.161.2.12 x86
Using JRE version 1.8.0_161-b12 Java HotSpot(TM) Client VM
User home directory = C:\Users\Brandon
----------------------------------------------------
c: clear console window
f: finalize objects on finalization queue
g: garbage collect
h: display this help message
m: print memory usage
o: trigger logging
p: reload proxy configuration
q: hide console
r: reload policy configuration
s: dump system and deployment properties
t: dump thread list
v: dump thread stack
0-5: set trace level to <n>
----------------------------------------------------
Starting Bootstrap Loader v3.0
Connect Step [attempt 1] connecting to: http://localhost:8088/main...
Downloading manifest at http://localhost:8088/main/system/launchmf/D?os=windows&arch=x86
...connect successful
Successfully downloaded launch manifest:
<?xml version="1.0" encoding="UTF-8"?>
<launch scope="D">
	<module name="" build="2018012914">
		<jar name="java-cup-10k.jar" crc="AB682326" length="32451"/>
		<jar name="commons-digester-1.8.1.jar" crc="20778438" length="42546"/>
		<jar name="miglayout-core-4.2.jar" crc="EC3CFA11" length="29128"/>
		<jar name="commons-logging-1.2.jar" crc="DB4B9A00" length="27460"/>
		<jar name="rstaui-2.5.7.jar" crc="C40EAC2B" length="35456"/>
		<jar name="commons-beanutils-1.8.3.jar" crc="86B560C6" length="61028"/>
		<jar name="metrics-core-3.1.0.jar" crc="E8CF1893" length="26710"/>
		<jar name="bcprov-jdk16-unsign-1.46.jar" crc="9AB21461" length="417043"/>
		<jar name="rhino-1.7.6.jar" crc="A101C772" length="417028"/>
		<jar name="common-7.9.6.jar" crc="8F24EDAF" length="899192"/>
		<jar name="languagesupport-2.5.7.jar" crc="8A8C9E3E" length="602083"/>
		<jar name="commons-lang3-3.3.2.jar" crc="E7839394" length="137157"/>
		<jar name="jide-components-3.5.13.jar" crc="5CB3392B" length="94429"/>
		<jar name="commons-collections-3.2.1.jar" crc="CFFAC520" length="114030"/>
		<jar name="jul-to-slf4j-1.7.21.jar" crc="503F83A" length="2381"/>
		<jar name="spellchecker-2.5.7.jar" crc="BF9D3CFF" length="32825"/>
		<jar name="core-java6-3.2.1.4.jar" crc="E8500B4B" length="172935"/>
		<jar name="jfreechart-min-1.0.0.jar" crc="B0BAA748" length="419001"/>
		<jar name="commons-io-2.1.jar" crc="37C74DE0" length="51509"/>
		<jar name="client-api-7.9.6.jar" crc="4E59286" length="899411"/>
		<jar name="designer-7.9.6.jar" crc="84117957" length="3342721"/>
		<jar name="miglayout-swing-4.2.jar" crc="6D970370" length="6570"/>
		<jar name="jide-grids-3.5.13.jar" crc="9CCD42A1" length="440549"/>
		<jar name="commons-cli-1.0.jar" crc="32913666" length="10867"/>
		<jar name="jide-shortcut-3.5.13.jar" crc="B40ED2FB" length="23027"/>
		<jar name="barcode4j-2.1.jar" crc="94F89669" length="86119"/>
		<jar name="forms-1.0.7.jar" crc="A5617906" length="26156"/>
		<jar name="jide-plaf-3.5.13.jar" crc="A98D7064" length="34271"/>
		<jar name="guava-18.0.jar" crc="34EB2E0B" length="441989"/>
		<jar name="jython-2.5.3-ia3.jar" crc="7649E30A" length="3678377"/>
		<jar name="jide-action-3.5.13.jar" crc="B6D25C2C" length="49907"/>
		<jar name="joda-time-2.3.jar" crc="C8E64FF1" length="167906"/>
		<jar name="slf4j-api-1.7.21.jar" crc="ED827065" length="13921"/>
		<jar name="jide-common-3.5.13.jar" crc="6B420921" length="368507"/>
		<jar name="rsyntaxtextarea-2.5.7.jar" crc="ACB90BF0" length="407290"/>
		<jar name="gson-2.8.0.jar" crc="F814A00" length="53881"/>
		<jar name="active-query-builder-7.9.6.jar" crc="B82FEF11" length="663771"/>
		<jar name="logback-classic-1.1.7.jar" crc="9DAED028" length="85290"/>
		<jar name="jide-dock-3.5.13.jar" crc="2E4DDA7A" length="106337"/>
		<jar name="alloy-1.4.4.ia1.jar" crc="F9EC2783" length="107335"/>
		<jar name="cron4j-2.2.3.jar" crc="433BD78" length="10242"/>
		<jar name="log4j-over-slf4j-1.7.21.jar" crc="DF2BDF66" length="6451"/>
		<jar name="jide-editor-3.5.13.jar" crc="60A2D974" length="114472"/>
		<jar name="commons-lang-1.0.jar" crc="66C5C0BA" length="21220"/>
		<jar name="jide-dialogs-3.5.13.jar" crc="93C19798" length="14532"/>
		<jar name="commons-validator-1.4.1.jar" crc="DE62627D" length="60038"/>
		<jar name="logback-core-1.1.7.jar" crc="54C09D82" length="116933"/>
		<jar name="launchclient.jar" crc="D9F8D3FD" length="298581"/>
		<jar name="autocomplete-2.5.7.jar" crc="C255B797" length="45426"/>
	</module>
	<module name="rept" build="2018012922">
		<jar name=" __2740378284__ commons-codec-1.10.jar" crc="F6F29A02" length="92603"/>
		<jar name=" __2740378284__ poi-3.14.jar" crc="960551FC" length="641921"/>
		<jar name=" __2740378284__ icepdf-viewer-5.0.7.jar" crc="C2459D13" length="343031"/>
		<jar name=" __2740378284__ reporting-common-4.9.6.jar" crc="E4B07811" length="1284883"/>
		<jar name=" __2740378284__ icepdf-core-5.0.7.jar" crc="84618FE2" length="812122"/>
		<jar name=" __2740378284__ reporting-client-4.9.6.jar" crc="7BB88178" length="1291898"/>
		<jar name=" __2740378284__ reporting-designer-4.9.6.jar" crc="A38B872A" length="212306"/>
		<jar name=" __2740378284__ tools-jar-14.9.5.jar" crc="7D9A2343" length="1353619"/>
	</module>
	<module name="xopc" build="2018012914">
		<jar name=" __554585493__ opc-ua-client-4.9.6.jar" crc="4A7E6ED8" length="2359"/>
		<jar name=" __554585493__ opc-ua-common-4.9.6.jar" crc="D415674E" length="371"/>
	</module>
	<module name="com.inductiveautomation.alarm-notification" build="2018012914">
		<jar name=" __2093970431__ alarm-notification-common-4.9.6.jar" crc="AE88EC42" length="5810"/>
		<jar name=" __2093970431__ alarm-notification-designer-4.9.6.jar" crc="6005A4F8" length="68243"/>
		<jar name=" __2093970431__ alarm-notification-client-4.9.6.jar" crc="97C7D16B" length="14241"/>
	</module>
	<module name="symfact" build="2018012922">
		<jar name=" __4176277444__ batik-gvt-1.7.jar" crc="C9895683" length="83898"/>
		<jar name=" __4176277444__ batik-js-1.7.jar" crc="D1EE0A69" length="175467"/>
		<jar name=" __4176277444__ batik-script-1.7.jar" crc="ABF8173A" length="16808"/>
		<jar name=" __4176277444__ commons-io-1.1.jar" crc="BB77E0F9" length="23789"/>
		<jar name=" __4176277444__ avalon-framework-api-4.3.1.jar" crc="4EEE66C9" length="10150"/>
		<jar name=" __4176277444__ avalon-framework-impl-4.3.1.jar" crc="EAFF86E2" length="21906"/>
		<jar name=" __4176277444__ batik-svg-dom-1.7.jar" crc="2DC49919" length="185338"/>
		<jar name=" __4176277444__ batik-svggen-1.7.jar" crc="1D8A6C0" length="60513"/>
		<jar name=" __4176277444__ fop-0.94.jar" crc="36C2E84A" length="527162"/>
		<jar name=" __4176277444__ batik-dom-1.7.jar" crc="51FCB23B" length="52859"/>
		<jar name=" __4176277444__ batik-ext-1.7.jar" crc="9CC563A2" length="4161"/>
		<jar name=" __4176277444__ batik-anim-1.7.jar" crc="9E7D7A6" length="32482"/>
		<jar name=" __4176277444__ batik-util-1.7.jar" crc="4E717E98" length="47671"/>
		<jar name=" __4176277444__ batik-parser-1.7.jar" crc="8BFAE4B5" length="22306"/>
		<jar name=" __4176277444__ batik-bridge-1.7.jar" crc="826B2C5E" length="136756"/>
		<jar name=" __4176277444__ vision-symbol-factory-5.9.6.jar" crc="45D1BBB4" length="28003976"/>
		<jar name=" __4176277444__ xmlgraphics-commons-1.2.jar" crc="AEEDA270" length="112180"/>
		<jar name=" __4176277444__ xml-apis-ext-1.3.04.jar" crc="A7FDB45A" length="16945"/>
		<jar name=" __4176277444__ batik-transcoder-1.7.jar" crc="806C6BD9" length="44860"/>
		<jar name=" __4176277444__ commons-logging-1.0.4.jar" crc="3AC82504" length="16945"/>
		<jar name=" __4176277444__ batik-css-1.7.jar" crc="DD8DFDDC" length="68047"/>
		<jar name=" __4176277444__ xalan-2.6.0.jar" crc="2F592412" length="828809"/>
		<jar name=" __4176277444__ batik-awt-util-1.7.jar" crc="1E1C1F54" length="121539"/>
		<jar name=" __4176277444__ batik-xml-1.7.jar" crc="C271FE9" length="14473"/>
	</module>
	<module name="fpmi" build="2018012914">
		<jar name=" __4068851791__ vision-common-9.9.6.jar" crc="1E7D022D" length="2083"/>
		<jar name=" __4068851791__ batik-gui-util-1.7.jar" crc="58062471" length="58559"/>
		<jar name=" __4068851791__ batik-script-1.7.jar" crc="ABF8173A" length="16808"/>
		<jar name=" __4068851791__ vision-designer-9.9.6.jar" crc="337FB394" length="694783"/>
		<jar name=" __4068851791__ httpcore-4.2.5.jar" crc="4C5EB242" length="60946"/>
		<jar name=" __4068851791__ batik-dom-1.7.jar" crc="51FCB23B" length="52859"/>
		<jar name=" __4068851791__ xalan-2.6.0.jar" crc="2F592412" length="828809"/>
		<jar name=" __4068851791__ batik-svg-dom-1.7.jar" crc="2DC49919" length="185338"/>
		<jar name=" __4068851791__ batik-swing-1.7.jar" crc="18ED17D8" length="40800"/>
		<jar name=" __4068851791__ httpclient-4.2.6.jar" crc="99F0E8E7" length="101082"/>
		<jar name=" __4068851791__ batik-gvt-1.7.jar" crc="C9895683" length="83898"/>
		<jar name=" __4068851791__ batik-awt-util-1.7.jar" crc="1E1C1F54" length="121539"/>
		<jar name=" __4068851791__ batik-css-1.7.jar" crc="DD8DFDDC" length="68047"/>
		<jar name=" __4068851791__ batik-bridge-1.7.jar" crc="826B2C5E" length="136756"/>
		<jar name=" __4068851791__ batik-ext-1.7.jar" crc="9CC563A2" length="4161"/>
		<jar name=" __4068851791__ vision-client-9.9.6.jar" crc="225FC48D" length="812844"/>
		<jar name=" __4068851791__ batik-util-1.7.jar" crc="4E717E98" length="47671"/>
		<jar name=" __4068851791__ batik-xml-1.7.jar" crc="C271FE9" length="14473"/>
		<jar name=" __4068851791__ batik-js-1.7.jar" crc="D1EE0A69" length="175467"/>
		<jar name=" __4068851791__ xml-apis-ext-1.3.04.jar" crc="A7FDB45A" length="16945"/>
		<jar name=" __4068851791__ batik-anim-1.7.jar" crc="9E7D7A6" length="32482"/>
		<jar name=" __4068851791__ commons-codec-1.6.jar" crc="D4695169" length="72115"/>
		<jar name=" __4068851791__ batik-parser-1.7.jar" crc="8BFAE4B5" length="22306"/>
		<jar name=" __4068851791__ commons-logging-1.1.1.jar" crc="4B09A5F" length="26691"/>
	</module>
	<module name="mobile" build="2018012914">
		<jar name=" __3321195016__ mobile-common-4.9.6.jar" crc="7FF7F868" length="2782"/>
		<jar name=" __3321195016__ mobile-client-4.9.6.jar" crc="4CDADF9B" length="1850"/>
		<jar name=" __3321195016__ mobile-designer-4.9.6.jar" crc="B3E2B082" length="3994"/>
	</module>
	<module name="com.inductiveautomation.sfc" build="2018012922">
		<jar name=" __3209355077__ sfc-designer-3.9.6.jar" crc="81CA55C6" length="99591"/>
		<jar name=" __3209355077__ sfc-common-3.9.6.jar" crc="AD9F0C08" length="34696"/>
		<jar name=" __3209355077__ sfc-client-3.9.6.jar" crc="78D43D21" length="39016"/>
	</module>
	<module name="fsql" build="2018012914">
		<jar name=" __3428108744__ sql-bridge-designer-8.9.6.jar" crc="8212F6AF" length="281082"/>
		<jar name=" __3428108744__ sql-bridge-common-8.9.6.jar" crc="D161CD3" length="25257"/>
	</module>
	<module name="com.inductiveautomation.eam" build="2018012914">
		<jar name=" __690311134__ eam-designer-2.9.6.jar" crc="4F83B767" length="11762"/>
		<jar name=" __690311134__ eam-client-2.9.6.jar" crc="2D04DD7B" length="2287"/>
		<jar name=" __690311134__ eam-common-2.9.6.jar" crc="698653DA" length="2350"/>
	</module>
	<module name="dnp3-driver" build="2018012914">
		<jar name=" __2733477256__ dnp3-common-2.9.6.jar" crc="8A368A19" length="566"/>
		<jar name=" __2733477256__ dnp3-designer-2.9.6.jar" crc="E51A5D74" length="735"/>
		<jar name=" __2733477256__ dnp3-client-2.9.6.jar" crc="94E65D3D" length="2014"/>
	</module>
	<module name="opccom" build="2018012922">
		<jar name=" __779097944__ opc-classic-client-4.9.6.jar" crc="FE22C2D8" length="1470"/>
		<jar name=" __779097944__ opc-classic-common-4.9.6.jar" crc="DF9B4684" length="2898"/>
	</module>
	<thirdPartyModules md5="e408e1cd532c40cb3a410c7cccd1d516"/>
</launch>
Claiming id in C:\Users\Brandon\.ignition\cache\gwlocalhost_8088_8043_main...
... obtaining lock
... lock obtained.
... claimed id 1
Calculated necessary downloads:
<?xml version="1.0" encoding="UTF-8"?>
<launch scope="D">
	<module name="" build="2018012914">
	</module>
	<module name="rept" build="2018012922">
	</module>
	<module name="xopc" build="2018012914">
	</module>
	<module name="com.inductiveautomation.alarm-notification" build="2018012914">
	</module>
	<module name="symfact" build="2018012922">
	</module>
	<module name="fpmi" build="2018012914">
	</module>
	<module name="mobile" build="2018012914">
	</module>
	<module name="com.inductiveautomation.sfc" build="2018012922">
	</module>
	<module name="fsql" build="2018012914">
	</module>
	<module name="com.inductiveautomation.eam" build="2018012914">
	</module>
	<module name="dnp3-driver" build="2018012914">
	</module>
	<module name="opccom" build="2018012922">
	</module>
	<thirdPartyModules md5="null"/>
</launch>
Third party Python modules downloaded.
Downloading "http://localhost:8088/main/system/translations/"...
Connect successful.
Starting download of 428 bytes
Download successful
Creating classloader with JAR files: [file:/C:/Users/Brandon/.ignition/cache/resources/platform/java-cup-10k.jar/00000000AB682326/java-cup-10k.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-digester-1.8.1.jar/0000000020778438/commons-digester-1.8.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/miglayout-core-4.2.jar/00000000EC3CFA11/miglayout-core-4.2.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-logging-1.2.jar/00000000DB4B9A00/commons-logging-1.2.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/rstaui-2.5.7.jar/00000000C40EAC2B/rstaui-2.5.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-beanutils-1.8.3.jar/0000000086B560C6/commons-beanutils-1.8.3.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/metrics-core-3.1.0.jar/00000000E8CF1893/metrics-core-3.1.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/bcprov-jdk16-unsign-1.46.jar/000000009AB21461/bcprov-jdk16-unsign-1.46.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/rhino-1.7.6.jar/00000000A101C772/rhino-1.7.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/common-7.9.6.jar/000000008F24EDAF/common-7.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/languagesupport-2.5.7.jar/000000008A8C9E3E/languagesupport-2.5.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-lang3-3.3.2.jar/00000000E7839394/commons-lang3-3.3.2.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-components-3.5.13.jar/000000005CB3392B/jide-components-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-collections-3.2.1.jar/00000000CFFAC520/commons-collections-3.2.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jul-to-slf4j-1.7.21.jar/000000000503F83A/jul-to-slf4j-1.7.21.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/spellchecker-2.5.7.jar/00000000BF9D3CFF/spellchecker-2.5.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/core-java6-3.2.1.4.jar/00000000E8500B4B/core-java6-3.2.1.4.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jfreechart-min-1.0.0.jar/00000000B0BAA748/jfreechart-min-1.0.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-io-2.1.jar/0000000037C74DE0/commons-io-2.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/client-api-7.9.6.jar/0000000004E59286/client-api-7.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/designer-7.9.6.jar/0000000084117957/designer-7.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/miglayout-swing-4.2.jar/000000006D970370/miglayout-swing-4.2.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-grids-3.5.13.jar/000000009CCD42A1/jide-grids-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-cli-1.0.jar/0000000032913666/commons-cli-1.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-shortcut-3.5.13.jar/00000000B40ED2FB/jide-shortcut-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/barcode4j-2.1.jar/0000000094F89669/barcode4j-2.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/forms-1.0.7.jar/00000000A5617906/forms-1.0.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-plaf-3.5.13.jar/00000000A98D7064/jide-plaf-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/guava-18.0.jar/0000000034EB2E0B/guava-18.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jython-2.5.3-ia3.jar/000000007649E30A/jython-2.5.3-ia3.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-action-3.5.13.jar/00000000B6D25C2C/jide-action-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/joda-time-2.3.jar/00000000C8E64FF1/joda-time-2.3.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/slf4j-api-1.7.21.jar/00000000ED827065/slf4j-api-1.7.21.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-common-3.5.13.jar/000000006B420921/jide-common-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/rsyntaxtextarea-2.5.7.jar/00000000ACB90BF0/rsyntaxtextarea-2.5.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/gson-2.8.0.jar/000000000F814A00/gson-2.8.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/active-query-builder-7.9.6.jar/00000000B82FEF11/active-query-builder-7.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/logback-classic-1.1.7.jar/000000009DAED028/logback-classic-1.1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-dock-3.5.13.jar/000000002E4DDA7A/jide-dock-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/alloy-1.4.4.ia1.jar/00000000F9EC2783/alloy-1.4.4.ia1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/cron4j-2.2.3.jar/000000000433BD78/cron4j-2.2.3.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/log4j-over-slf4j-1.7.21.jar/00000000DF2BDF66/log4j-over-slf4j-1.7.21.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-editor-3.5.13.jar/0000000060A2D974/jide-editor-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-lang-1.0.jar/0000000066C5C0BA/commons-lang-1.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/jide-dialogs-3.5.13.jar/0000000093C19798/jide-dialogs-3.5.13.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/commons-validator-1.4.1.jar/00000000DE62627D/commons-validator-1.4.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/logback-core-1.1.7.jar/0000000054C09D82/logback-core-1.1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/platform/autocomplete-2.5.7.jar/00000000C255B797/autocomplete-2.5.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ commons-codec-1.10.jar/00000000F6F29A02/ __2740378284__ commons-codec-1.10.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ poi-3.14.jar/00000000960551FC/ __2740378284__ poi-3.14.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ icepdf-viewer-5.0.7.jar/00000000C2459D13/ __2740378284__ icepdf-viewer-5.0.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ reporting-common-4.9.6.jar/00000000E4B07811/ __2740378284__ reporting-common-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ icepdf-core-5.0.7.jar/0000000084618FE2/ __2740378284__ icepdf-core-5.0.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ reporting-client-4.9.6.jar/000000007BB88178/ __2740378284__ reporting-client-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ reporting-designer-4.9.6.jar/00000000A38B872A/ __2740378284__ reporting-designer-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/rept/ __2740378284__ tools-jar-14.9.5.jar/000000007D9A2343/ __2740378284__ tools-jar-14.9.5.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/xopc/ __554585493__ opc-ua-client-4.9.6.jar/000000004A7E6ED8/ __554585493__ opc-ua-client-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/xopc/ __554585493__ opc-ua-common-4.9.6.jar/00000000D415674E/ __554585493__ opc-ua-common-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.alarm-notification/ __2093970431__ alarm-notification-common-4.9.6.jar/00000000AE88EC42/ __2093970431__ alarm-notification-common-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.alarm-notification/ __2093970431__ alarm-notification-designer-4.9.6.jar/000000006005A4F8/ __2093970431__ alarm-notification-designer-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.alarm-notification/ __2093970431__ alarm-notification-client-4.9.6.jar/0000000097C7D16B/ __2093970431__ alarm-notification-client-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-gvt-1.7.jar/00000000C9895683/ __4176277444__ batik-gvt-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-js-1.7.jar/00000000D1EE0A69/ __4176277444__ batik-js-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-script-1.7.jar/00000000ABF8173A/ __4176277444__ batik-script-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ commons-io-1.1.jar/00000000BB77E0F9/ __4176277444__ commons-io-1.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ avalon-framework-api-4.3.1.jar/000000004EEE66C9/ __4176277444__ avalon-framework-api-4.3.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ avalon-framework-impl-4.3.1.jar/00000000EAFF86E2/ __4176277444__ avalon-framework-impl-4.3.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-svg-dom-1.7.jar/000000002DC49919/ __4176277444__ batik-svg-dom-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-svggen-1.7.jar/0000000001D8A6C0/ __4176277444__ batik-svggen-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ fop-0.94.jar/0000000036C2E84A/ __4176277444__ fop-0.94.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-dom-1.7.jar/0000000051FCB23B/ __4176277444__ batik-dom-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-ext-1.7.jar/000000009CC563A2/ __4176277444__ batik-ext-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-anim-1.7.jar/0000000009E7D7A6/ __4176277444__ batik-anim-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-util-1.7.jar/000000004E717E98/ __4176277444__ batik-util-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-parser-1.7.jar/000000008BFAE4B5/ __4176277444__ batik-parser-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-bridge-1.7.jar/00000000826B2C5E/ __4176277444__ batik-bridge-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ vision-symbol-factory-5.9.6.jar/0000000045D1BBB4/ __4176277444__ vision-symbol-factory-5.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ xmlgraphics-commons-1.2.jar/00000000AEEDA270/ __4176277444__ xmlgraphics-commons-1.2.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ xml-apis-ext-1.3.04.jar/00000000A7FDB45A/ __4176277444__ xml-apis-ext-1.3.04.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-transcoder-1.7.jar/00000000806C6BD9/ __4176277444__ batik-transcoder-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ commons-logging-1.0.4.jar/000000003AC82504/ __4176277444__ commons-logging-1.0.4.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-css-1.7.jar/00000000DD8DFDDC/ __4176277444__ batik-css-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ xalan-2.6.0.jar/000000002F592412/ __4176277444__ xalan-2.6.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-awt-util-1.7.jar/000000001E1C1F54/ __4176277444__ batik-awt-util-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/symfact/ __4176277444__ batik-xml-1.7.jar/000000000C271FE9/ __4176277444__ batik-xml-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ vision-common-9.9.6.jar/000000001E7D022D/ __4068851791__ vision-common-9.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-gui-util-1.7.jar/0000000058062471/ __4068851791__ batik-gui-util-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-script-1.7.jar/00000000ABF8173A/ __4068851791__ batik-script-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ vision-designer-9.9.6.jar/00000000337FB394/ __4068851791__ vision-designer-9.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ httpcore-4.2.5.jar/000000004C5EB242/ __4068851791__ httpcore-4.2.5.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-dom-1.7.jar/0000000051FCB23B/ __4068851791__ batik-dom-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ xalan-2.6.0.jar/000000002F592412/ __4068851791__ xalan-2.6.0.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-svg-dom-1.7.jar/000000002DC49919/ __4068851791__ batik-svg-dom-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-swing-1.7.jar/0000000018ED17D8/ __4068851791__ batik-swing-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ httpclient-4.2.6.jar/0000000099F0E8E7/ __4068851791__ httpclient-4.2.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-gvt-1.7.jar/00000000C9895683/ __4068851791__ batik-gvt-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-awt-util-1.7.jar/000000001E1C1F54/ __4068851791__ batik-awt-util-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-css-1.7.jar/00000000DD8DFDDC/ __4068851791__ batik-css-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-bridge-1.7.jar/00000000826B2C5E/ __4068851791__ batik-bridge-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-ext-1.7.jar/000000009CC563A2/ __4068851791__ batik-ext-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ vision-client-9.9.6.jar/00000000225FC48D/ __4068851791__ vision-client-9.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-util-1.7.jar/000000004E717E98/ __4068851791__ batik-util-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-xml-1.7.jar/000000000C271FE9/ __4068851791__ batik-xml-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-js-1.7.jar/00000000D1EE0A69/ __4068851791__ batik-js-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ xml-apis-ext-1.3.04.jar/00000000A7FDB45A/ __4068851791__ xml-apis-ext-1.3.04.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-anim-1.7.jar/0000000009E7D7A6/ __4068851791__ batik-anim-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ commons-codec-1.6.jar/00000000D4695169/ __4068851791__ commons-codec-1.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ batik-parser-1.7.jar/000000008BFAE4B5/ __4068851791__ batik-parser-1.7.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fpmi/ __4068851791__ commons-logging-1.1.1.jar/0000000004B09A5F/ __4068851791__ commons-logging-1.1.1.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/mobile/ __3321195016__ mobile-common-4.9.6.jar/000000007FF7F868/ __3321195016__ mobile-common-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/mobile/ __3321195016__ mobile-client-4.9.6.jar/000000004CDADF9B/ __3321195016__ mobile-client-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/mobile/ __3321195016__ mobile-designer-4.9.6.jar/00000000B3E2B082/ __3321195016__ mobile-designer-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.sfc/ __3209355077__ sfc-designer-3.9.6.jar/0000000081CA55C6/ __3209355077__ sfc-designer-3.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.sfc/ __3209355077__ sfc-common-3.9.6.jar/00000000AD9F0C08/ __3209355077__ sfc-common-3.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.sfc/ __3209355077__ sfc-client-3.9.6.jar/0000000078D43D21/ __3209355077__ sfc-client-3.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fsql/ __3428108744__ sql-bridge-designer-8.9.6.jar/000000008212F6AF/ __3428108744__ sql-bridge-designer-8.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/fsql/ __3428108744__ sql-bridge-common-8.9.6.jar/000000000D161CD3/ __3428108744__ sql-bridge-common-8.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.eam/ __690311134__ eam-designer-2.9.6.jar/000000004F83B767/ __690311134__ eam-designer-2.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.eam/ __690311134__ eam-client-2.9.6.jar/000000002D04DD7B/ __690311134__ eam-client-2.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/com.inductiveautomation.eam/ __690311134__ eam-common-2.9.6.jar/00000000698653DA/ __690311134__ eam-common-2.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/dnp3-driver/ __2733477256__ dnp3-common-2.9.6.jar/000000008A368A19/ __2733477256__ dnp3-common-2.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/dnp3-driver/ __2733477256__ dnp3-designer-2.9.6.jar/00000000E51A5D74/ __2733477256__ dnp3-designer-2.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/dnp3-driver/ __2733477256__ dnp3-client-2.9.6.jar/0000000094E65D3D/ __2733477256__ dnp3-client-2.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/opccom/ __779097944__ opc-classic-client-4.9.6.jar/00000000FE22C2D8/ __779097944__ opc-classic-client-4.9.6.jar, file:/C:/Users/Brandon/.ignition/cache/resources/modules/opccom/ __779097944__ opc-classic-common-4.9.6.jar/00000000DF9B4684/ __779097944__ opc-classic-common-4.9.6.jar]
Starting class: com.inductiveautomation.ignition.designer.DesignerStartupHook
15:17:14.254 [Thread-12] INFO com.inductiveautomation.ignition.client.gateway_interface.GatewayConnectionManager - Initializing gateway connection with URLs: [http://localhost:8088/main]
15:17:14.305 [Thread-12] INFO com.inductiveautomation.ignition.client.util.gui.progress.ClientProgressManager - Progress manager started.

```

I see poi-3.14 but not the poi-3.17 I added to the common folder.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [April 4, 2018, 7:20pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/14 "2018-04-04T19:20:06Z")

</div>

Another possibility that is unique to your situation (trying to load Apache POI of all things…) is that the Reporting module already depends on an older version of POI (3.14), and since the class path is flat in the Client/Designer scopes there’s no guarantee that your POI takes priority over the POI from Reporting (or the other way around - DANGER!).

So, if you have the Reporting module installed, try uninstalling that…

---

<div class="post-metadata">

**Author:** ![brandon1](https://avatars.discourse-cdn.com/v4/letter/b/ea666f/32.png) [@brandon1](https://forum.inductiveautomation.com/u/brandon1)\
**Post date:** [April 4, 2018, 7:24pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/15 "2018-04-04T19:24:30Z")

</div>

Does the POI jar that is loaded for reporting have all of the classes available? The whole reason I want to load the latest version is that I cannot use the XSSFWorkbook class.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [April 4, 2018, 7:25pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/16 "2018-04-04T19:25:06Z")

</div>

It has whatever comes in version 3.14.

edit: which doesn’t appear to include the class or even package you’re talking about.

---

<div class="post-metadata">

**Author:** ![brandon1](https://avatars.discourse-cdn.com/v4/letter/b/ea666f/32.png) [@brandon1](https://forum.inductiveautomation.com/u/brandon1)\
**Post date:** [April 4, 2018, 7:33pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/17 "2018-04-04T19:33:22Z")

</div>

How did you figure out what packages are included in that version?

Also, If I imported the classes I wanted in a scripting module, would they be available to the client and designer then?

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [April 4, 2018, 7:47pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/18 "2018-04-04T19:47:31Z")

</div>

I just unzipped the jar file for that version and looked.

> [@brandon1](#):
>
> Also, If I imported the classes I wanted in a scripting module, would they be available to the client and designer then?

You're going to run into the same potential conflict as long as the Reporting module is installed. You've hit a weird corner case in the architecture of the Client and Designer and its flat class path.

If you loaded POI in the Gateway scope and all your interactions with the library took place there you'd be okay.

---

<div class="post-metadata">

**Author:** ![gabrielmatau](https://avatars.discourse-cdn.com/v4/letter/g/d2c977/32.png) [@gabrielmatau](https://forum.inductiveautomation.com/u/gabrielmatau)\
**Post date:** [August 2, 2018, 3:58pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/21 "2018-08-02T15:58:29Z")

</div>

Hi Kevin, i see your post about this issue, but i have a problem. I followed your suggestions locate my jar file in folder /lib/core/common, restart de ignition gateway an restart design client, but when trying import class in designer script with python script shows an error.

the class is asterisk-java-2.0.3.jar

code phyton i use is simple

def Asterisk():  
from igniotionphone import HelloManager  
originate = HelloManager().run

call= Asterisk()

this error send

Traceback (most recent call last):

File “event:actionPerformed”, line 5, in

File “event:actionPerformed”, line 2, in Asterisk

ImportError: No module named igniotionphone

---

<div class="post-metadata">

**Author:** ![Kyle\_Chase](https://avatars.discourse-cdn.com/v4/letter/k/9de0a6/32.png) [@Kyle\_Chase](https://forum.inductiveautomation.com/u/Kyle_Chase)\
**Post date:** [August 2, 2018, 4:39pm UTC](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202/22 "2018-08-02T16:39:47Z")

</div>

I do not think you have the same issue. There is no path in that jar for igniotionphone, you need to import from the full class path.

[Next page](https://forum.inductiveautomation.com/t/adding-java-custom-classes-to-ignition/15202.md?page=2)
