Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

java.lang.UnsatisfiedLinkError when using chromedriver #61

Open
twelvesec opened this issue Feb 8, 2017 · 4 comments
Open

java.lang.UnsatisfiedLinkError when using chromedriver #61

twelvesec opened this issue Feb 8, 2017 · 4 comments

Comments

@twelvesec
Copy link

twelvesec commented Feb 8, 2017

Hi,

I get this exception at the end of every gradle build when using chromedriver (tried both old and new version):
java.lang.UnsatisfiedLinkError: Can't obtain updateLastError method for class com.sun.jna.Native.

I am running under:

  • Windows 7 (64-bit)
  • JDK 1.8.0_121
  • Chrome 48 & 56

Update: The problem persists even when using 32-bit JVM and 32-bit Chrome versions.

I think it has to do with selenium WebDriver's quit() method.

The full stacktrace:

java.lang.UnsatisfiedLinkError: Can't obtain updateLastError method for class com.sun.jna.Native
	at com.sun.jna.Native.initIDs(Native Method)
	at com.sun.jna.Native.<clinit>(Native.java:139)
	at org.openqa.selenium.os.Kernel32.<clinit>(Kernel32.java:34)
	at org.openqa.selenium.os.ProcessUtils.killWinProcess(ProcessUtils.java:133)
	at org.openqa.selenium.os.ProcessUtils.killProcess(ProcessUtils.java:81)
	at org.openqa.selenium.os.UnixProcess$SeleniumWatchDog.destroyHarder(UnixProcess.java:247)
	at org.openqa.selenium.os.UnixProcess$SeleniumWatchDog.access$200(UnixProcess.java:201)
	at org.openqa.selenium.os.UnixProcess.destroy(UnixProcess.java:125)
	at org.openqa.selenium.os.CommandLine.destroy(CommandLine.java:155)
	at org.openqa.selenium.remote.service.DriverService.stop(DriverService.java:196)
	at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:94)
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:644)
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:701)
	at org.openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java:526)
	at net.continuumsecurity.web.drivers.DriverFactory.quitAll(DriverFactory.java:80)
	at net.continuumsecurity.junit.SecurityTest.tearDown(SecurityTest.java:23)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at cucumber.api.junit.Cucumber.run(Cucumber.java:98)
	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.runTestClass(JUnitTestClassExecuter.java:105)
	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.execute(JUnitTestClassExecuter.java:56)
	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassProcessor.processTestClass(JUnitTestClassProcessor.java:64)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:50)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.messaging.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
	at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
	at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:106)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.messaging.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:360)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
	at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
@stephendv1
Copy link
Contributor

This has been reported on another Selenium based framework too: https://groups.google.com/forum/#!topic/thucydides-users/m6akVHfqY5A
Could you try upgrading JVM?

@theotherp
Copy link

I'm having this issue with JDK 10.0.2

@stephendv1
Copy link
Contributor

Could you check that you're using 64 bit versions of everything:
OS, Jvm, Chrome-driver

@theotherp
Copy link

I have Windows 10 64 Bit. https://chromedriver.storage.googleapis.com/index.html?path=2.41/ doesn't provide a 64Bit version for Windows. JRE 10 only is only available as 64Bit for Windows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants