我有一个使用Grails编写的Web应用程序在尝试启动Selenium独立服务器时在生产模式下失败。
这是错误:
2017-12-04 10:04:52,905 [http-bio-8080-exec-7] ERROR
errors.GrailsExceptionResolver - ClassNotFoundException occurred when
processing request: [GET] /Diversotron-0.1/api/edit
com.google.common.base.Function. Stacktrace follows:
java.lang.ClassNotFoundException: com.google.common.base.Function
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2585)
at java.lang.Class.getDeclaredConstructors(Class.java:1906)
at org.codehaus.groovy.util.LazyReference.getLocked(LazyReference.java:46)
at org.codehaus.groovy.util.LazyReference.get(LazyReference.java:33)
at diversotron.PropotronService.setPropotron(PropotronService.groovy:29)
at diversotron.ApiController.edit(ApiController.groovy:53)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
第29行是:
WebDriver driver = new RemoteWebDriver(new URL("http://123.456.78.910:4444/wd/hub"), capabilities)
这在调试模式下完全正常。有人有主意吗? (隐私的IP地址)
答案 0 :(得分:0)
使用 FirefoxOptions
通过org.openqa.selenium.MutableCapabilities
合并功能,如下所示:
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("...", true);
capabilities.setCapability("...", true);
FirefoxOptions options = new FirefoxOptions();
options.merge(capabilities);
WebDriver driver = new RemoteWebDriver(new URL("http://127.0.0.1:4444/wd/hub"), options);