# Linux java 17 opens and exports

**URL:** <https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546>\
**Category:** Ignition\
**Tags:** vision, ignition81\
**Created:** [December 27, 2023, 3:14pm UTC](https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546 "2023-12-27T15:14:38Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![John\_Pettibone](https://avatars.discourse-cdn.com/v4/letter/j/c2a13f/32.png) [@John\_Pettibone](https://forum.inductiveautomation.com/u/John_Pettibone)\
**Post date:** [December 27, 2023, 3:14pm UTC](https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546/1 "2023-12-27T15:14:38Z")

</div>

I did a server upgrade and along with it ignition upgraded in the process. This caused the rasberry pi machines that we use to fail loading the vision client. The error were receiving is

Error Launching applicaiton:  
ValidationException: JPMS module  
opens/export check failed! check your  
--add-opens and --add-exports clauses

Anyone have any knowledge on the fix for this been trying to troubles shoot it for a day now and still cant wrap my head around it.

---

<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:** [December 27, 2023, 3:24pm UTC](https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546/2 "2023-12-27T15:24:42Z")

</div>

Inside the `legacyClient.sh` script there is probably a line like this:

```auto
JAVA_ARGS=""

```

try changing that to:

```auto
JAVA_ARGS="--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-opens=java.desktop/java.awt.event=ALL-UNNAMED --add-opens=java.desktop/javax.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.tree=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED --add-opens=java.desktop/javax.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.tree=ALL-UNNAMED --add-exports=java.base/sun.security.action=ALL-UNNAMED --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED --add-exports=java.desktop/com.sun.awt=ALL-UNNAMED --add-exports=java.desktop/com.sun.java.swing.plaf.windows=ALL-UNNAMED --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.desktop/sun.awt.image=ALL-UNNAMED --add-exports=java.desktop/sun.awt.shell=ALL-UNNAMED --add-exports=java.desktop/sun.awt.windows=ALL-UNNAMED --add-exports=java.desktop/sun.swing=ALL-UNNAMED --add-exports=java.desktop/sun.swing.plaf.synth=ALL-UNNAMED --add-exports=java.desktop/sun.swing.table=ALL-UNNAMED --add-exports=java.desktop/sun.print=ALL-UNNAMED"

```

no idea if this will work. The unsupported 32-bit client scenario became a little more unsupported with the JDK 17 upgrade.

---

<div class="post-metadata">

**Author:** ![John\_Pettibone](https://avatars.discourse-cdn.com/v4/letter/j/c2a13f/32.png) [@John\_Pettibone](https://forum.inductiveautomation.com/u/John_Pettibone)\
**Post date:** [December 27, 2023, 3:34pm UTC](https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546/3 "2023-12-27T15:34:16Z")

</div>

Thank you that fixed the issue. we are running 64-bit ARM for the pi's however, dont know if that matters in this situation.

---

<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:** [December 27, 2023, 3:55pm UTC](https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546/4 "2023-12-27T15:55:49Z")

</div>

Shouldn't matter, I'd expect this to work on 32-bit ARM as well if anybody from the future finds this. Just need to have the right JDK installed.

---

<div class="post-metadata">

**Author:** ![Sean\_Calahan](https://avatars.discourse-cdn.com/v4/letter/s/b19c9b/32.png) [@Sean\_Calahan](https://forum.inductiveautomation.com/u/Sean_Calahan)\
**Post date:** [January 9, 2024, 8:39pm UTC](https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546/5 "2024-01-09T20:39:05Z")

</div>

This did work, I found it easiest to add it to a launch arguments file and call it in the launch bat file in a 32bit windows installation rather than modifying the legacyClient.sh script.

The launch bat file:

`C:\Users\USER\Desktop\legacyClient.bat http://IP.AD.DR.ESS:8088 C PROJ_NAME F C:\Users\USER\Desktop\LaunchArgsIgnition.txt`

The entire contents of LaunchArgsIgnition.txt:

```auto
--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-opens=java.desktop/java.awt.event=ALL-UNNAMED --add-opens=java.desktop/javax.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.tree=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED --add-opens=java.desktop/javax.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.tree=ALL-UNNAMED --add-exports=java.base/sun.security.action=ALL-UNNAMED --add-exports=java.desktop/com.apple.eawt=ALL-UNNAMED --add-exports=java.desktop/com.sun.awt=ALL-UNNAMED --add-exports=java.desktop/com.sun.java.swing.plaf.windows=ALL-UNNAMED --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.desktop/sun.awt.image=ALL-UNNAMED --add-exports=java.desktop/sun.awt.shell=ALL-UNNAMED --add-exports=java.desktop/sun.awt.windows=ALL-UNNAMED --add-exports=java.desktop/sun.swing=ALL-UNNAMED --add-exports=java.desktop/sun.swing.plaf.synth=ALL-UNNAMED --add-exports=java.desktop/sun.swing.table=ALL-UNNAMED --add-exports=java.desktop/sun.print=ALL-UNNAMED

```

I have a Java 17 jdk installed on the clients as well. Just updated to Ignition 8.1.36 from 8.1.24.

---

<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:** [November 20, 2024, 1:45am UTC](https://forum.inductiveautomation.com/t/linux-java-17-opens-and-exports/83546/6 "2024-11-20T01:45:46Z")

</div>

4 posts were merged into an existing topic: [Error running legacy launcher](https://forum.inductiveautomation.com/t/error-running-legacy-launcher/98816/3)
