ZAP 2.11.0 - UnsatisfiedLinkError: Native Library jawt.dll

666 views
Skip to first unread message

Paul Burton

unread,
Oct 8, 2021, 10:34:48 AM10/8/21
to OWASP ZAP User Group
I'm running a Win10 virtual server that I've had ZAP 2.8 --> 2.10 installed on for several years with no issues.  I upgraded to 2.11 yesterday and when I attempt to start it up (either the desktop icon or zap.bat) it fails with the following error:

2021-10-08 09:00:33,750 [main ] INFO  GuiBootstrap - OWASP ZAP 2.11.0 started 08/10/21 09:00:33 with home C:\Users\<myusername>\OWASP ZAP\
2021-10-08 09:00:34,578 [AWT-EventQueue-0] INFO  SSLConnector - Reading supported SSL/TLS protocols...
2021-10-08 09:00:34,578 [AWT-EventQueue-0] INFO  SSLConnector - Using a SSLEngine...
2021-10-08 09:00:34,703 [AWT-EventQueue-0] INFO  SSLConnector - Done reading supported SSL/TLS protocols: [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2]
2021-10-08 09:00:34,719 [AWT-EventQueue-0] INFO  OptionsParamCertificate - Unsafe SSL renegotiation disabled.
2021-10-08 09:00:37,312 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache open start
2021-10-08 09:00:37,327 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache commit start
2021-10-08 09:00:37,343 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache commit end
2021-10-08 09:00:37,343 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache open end
2021-10-08 09:00:38,109 [AWT-EventQueue-0] INFO  View - Initialising View
2021-10-08 09:00:39,452 [AWT-EventQueue-0] ERROR UncaughtExceptionLogger - Exception in thread "AWT-EventQueue-0"
java.lang.UnsatisfiedLinkError: Native Library C:\Program Files\Java\jdk1.8.0_221\jre\bin\jawt.dll already loaded in another classloader

I've never seen this error before and haven't installed anything else on the server recently.  The Google indicates this is a generic JVM problem, but I'm unsure how to resolve it or why it started happening as soon as I installed 2.11.

What I've tried so far:

1. Uninstalling/reinstalling ZAP and restarting the virtual server. 
2. Searching the error string I've found recommendations on copying the offending file to the home directory of the app that's erroring out, so I copied jawt.dll into C:\Users\<myusername>\OWASP ZAP\
3. Removing other instances of jawt.dll.  I found one that was apparently being used with SoapUI, so I uninstalled SoapUI from the server

Simon Bennetts

unread,
Oct 8, 2021, 11:06:48 AM10/8/21
to OWASP ZAP User Group
I'm afraid to say that this is outside of our control - we just use the Java runtime and do not handle any Java library loading.
You could try re-installing java? Or trying a newer version like 11?

If they still fail then please post the full stack trace - we'll have a look to see if we can work anything out from that, but no promises I'm afraid :/

Cheers,

Simon

Paul Burton

unread,
Oct 8, 2021, 6:30:19 PM10/8/21
to OWASP ZAP User Group
Yeah, I figured it was some odd interaction b/t Java versions or implementations on this server, just weird that it suddenly started becoming a problem as soon as I upgraded to 2.11...

I searched the local drive for jawt.dll and found a couple instances of it in both \Program Files\Java and \Program Files (x86)\Java (as well as in my ZAP home directory that I copied over earlier).  I was able to resolve the problem by Add/Remove programs and uninstall anything named "Java", leaving me with only 2 instances of jawt.dll in \Program Files\Java and ZAP home.  I can now at least start up ZAP by running zap.bat, so good enough for me.

Thanks for pointing me in the right direction!

Karl Tauber

unread,
Oct 14, 2021, 5:30:31 PM10/14/21
to OWASP ZAP User Group
It is possible that the UnsatisfiedLinkError is caused by FlatLaf.
Is there a stack trace in the log?

Had a report today about the same UnsatisfiedLinkError in NetBeans.
Was not yet able to reproduce it...

Paul Burton

unread,
Nov 10, 2021, 3:03:21 PM11/10/21
to OWASP ZAP User Group
Yes, could be.  I had to update another Win10 machine today (this one using AdoptOpenJDK) and the same issue occurred.  Unfortunately I haven't been able to resolve it yet using the same method from before.

2021-11-10 13:39:23,611 [main ] DEBUG I18N - Using file system Messages resource bundle.
2021-11-10 13:39:23,673 [main ] INFO  GuiBootstrap - OWASP ZAP 2.11.0 started 10/11/21 13:39:23 with home C:\Users\<myusername>\OWASP ZAP\
2021-11-10 13:39:24,673 [AWT-EventQueue-0] INFO  SSLConnector - Reading supported SSL/TLS protocols...
2021-11-10 13:39:24,704 [AWT-EventQueue-0] INFO  SSLConnector - Using a SSLEngine...
2021-11-10 13:39:24,970 [AWT-EventQueue-0] INFO  SSLConnector - Done reading supported SSL/TLS protocols: [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2, TLSv1.3]
2021-11-10 13:39:24,985 [AWT-EventQueue-0] INFO  OptionsParamCertificate - Unsafe SSL renegotiation disabled.
2021-11-10 13:39:25,032 [AWT-EventQueue-0] DEBUG ParosDatabase - close
2021-11-10 13:39:25,173 [AWT-EventQueue-0] DEBUG ParosDatabase - open C:\Users\<myusername>\OWASP ZAP\session\untitled1
2021-11-10 13:39:27,170 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache open start
2021-11-10 13:39:27,185 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache commit start
2021-11-10 13:39:27,201 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache commit end
2021-11-10 13:39:27,201 [AWT-EventQueue-0] INFO  ENGINE - dataFileCache open end
2021-11-10 13:39:27,904 [AWT-EventQueue-0] INFO  View - Initialising View
2021-11-10 13:39:40,121 [AWT-EventQueue-0] ERROR UncaughtExceptionLogger - Exception in thread "AWT-EventQueue-0"
java.lang.UnsatisfiedLinkError: Native Library C:\Program Files\AdoptOpenJDK\jre-8.0.282.8-hotspot\bin\jawt.dll already loaded in another classloader
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1900) ~[?:1.8.0_282]
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1838) ~[?:1.8.0_282]
at java.lang.Runtime.loadLibrary0(Runtime.java:871) ~[?:1.8.0_282]
at java.lang.System.loadLibrary(System.java:1124) ~[?:1.8.0_282]
at com.formdev.flatlaf.ui.FlatWindowsNativeWindowBorder.getInstance(FlatWindowsNativeWindowBorder.java:98) ~[flatlaf-1.6.jar:1.6]
at com.formdev.flatlaf.ui.FlatNativeWindowBorder.initialize(FlatNativeWindowBorder.java:274) ~[flatlaf-1.6.jar:1.6]
at com.formdev.flatlaf.ui.FlatNativeWindowBorder.isSupported(FlatNativeWindowBorder.java:68) ~[flatlaf-1.6.jar:1.6]
at com.formdev.flatlaf.ui.FlatNativeWindowBorder.install(FlatNativeWindowBorder.java:76) ~[flatlaf-1.6.jar:1.6]
at com.formdev.flatlaf.ui.FlatRootPaneUI.installNativeWindowBorder(FlatRootPaneUI.java:205) ~[flatlaf-1.6.jar:1.6]
at com.formdev.flatlaf.ui.FlatRootPaneUI.installUI(FlatRootPaneUI.java:105) ~[flatlaf-1.6.jar:1.6]
at javax.swing.JComponent.setUI(JComponent.java:666) ~[?:1.8.0_282]
at javax.swing.JRootPane.setUI(JRootPane.java:474) ~[?:1.8.0_282]
at javax.swing.JRootPane.updateUI(JRootPane.java:484) ~[?:1.8.0_282]
at javax.swing.JRootPane.<init>(JRootPane.java:371) ~[?:1.8.0_282]
at javax.swing.JFrame.createRootPane(JFrame.java:286) ~[?:1.8.0_282]
at javax.swing.JFrame.frameInit(JFrame.java:267) ~[?:1.8.0_282]
at javax.swing.JFrame.<init>(JFrame.java:190) ~[?:1.8.0_282]
at org.parosproxy.paros.view.AbstractFrame.<init>(AbstractFrame.java:86) ~[zap-2.11.0.jar:2.11.0]
at org.parosproxy.paros.view.MainFrame.<init>(MainFrame.java:237) ~[zap-2.11.0.jar:2.11.0]
at org.parosproxy.paros.view.View.init(View.java:279) ~[zap-2.11.0.jar:2.11.0]
at org.parosproxy.paros.view.View.getSingleton(View.java:618) ~[zap-2.11.0.jar:2.11.0]
at org.zaproxy.zap.GuiBootstrap.init(GuiBootstrap.java:164) ~[zap-2.11.0.jar:2.11.0]
at org.zaproxy.zap.GuiBootstrap.startImpl(GuiBootstrap.java:111) ~[zap-2.11.0.jar:2.11.0]
at org.zaproxy.zap.GuiBootstrap.access$000(GuiBootstrap.java:64) ~[zap-2.11.0.jar:2.11.0]
at org.zaproxy.zap.GuiBootstrap$1.run(GuiBootstrap.java:101) ~[zap-2.11.0.jar:2.11.0]
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) ~[?:1.8.0_282]
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) ~[?:1.8.0_282]
at java.awt.EventQueue.access$500(EventQueue.java:97) ~[?:1.8.0_282]
at java.awt.EventQueue$3.run(EventQueue.java:709) ~[?:1.8.0_282]
at java.awt.EventQueue$3.run(EventQueue.java:703) ~[?:1.8.0_282]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_282]
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) ~[?:1.8.0_282]
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) ~[?:1.8.0_282]
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) [?:1.8.0_282]
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) [?:1.8.0_282]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) [?:1.8.0_282]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) [?:1.8.0_282]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) [?:1.8.0_282]
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) [?:1.8.0_282]

thc...@gmail.com

unread,
Nov 11, 2021, 5:02:28 AM11/11/21
to zaprox...@googlegroups.com
The weekly releases have the newer version of FlaLaF already:
https://www.zaproxy.org/download/#weekly

(You can also replace the library manually if you want to keep using 2.11.)

Best regards.
> *2021-11-10 13:39:40,121 [AWT-EventQueue-0] ERROR UncaughtExceptionLogger -
> Exception in thread "AWT-EventQueue-0"*
> *java.lang.UnsatisfiedLinkError: Native Library C:\Program
> Files\AdoptOpenJDK\jre-8.0.282.8-hotspot\bin\jawt.dll already loaded in
> another classloader*

kingthorin+owaspzap

unread,
Nov 11, 2021, 7:40:06 AM11/11/21
to OWASP ZAP User Group
Or you could switch to Java 11, I believe this issue only impacts Java 8.

Paul Burton

unread,
Nov 16, 2021, 3:42:15 PM11/16/21
to OWASP ZAP User Group
Yes, updating Java to Temurin/OpenJDK v17 (Adoptium - Open source, prebuilt OpenJDK binaries) resolved this on my machine and I can now run ZAP 2.11.0 without updating FlatLaf.
Reply all
Reply to author
Forward
0 new messages