2017-11-06 8 views
1

私はシンプルなawsベースのJavaのセレンアプリを作成するために試しています。 私はjava jdkとgoogle-chromeをインストールしました Windows(chromeriver ofc)でうまく動作するサンプルアプリケーションを作成しました しかし、awsにコードをコピーして実行しようとすると、このエラーが発生します。AWS Redhat ChromedriverはJavaのセレンで動作しません

これを解決する方法はありますか?

[[email protected] ec2-user]# java -version 
java version "1.7.0_151" 
OpenJDK Runtime Environment (amzn-2.6.11.0.74.amzn1-x86_64 u151-b00) 
OpenJDK 64-Bit Server VM (build 24.151-b00, mixed mode) 



[[email protected] ec2-user]# google-chrome --version 
Google Chrome 60.0.3112.113 

私のサンプルコード

import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.chrome.ChromeDriver; 
import org.openqa.selenium.chrome.ChromeOptions; 

/** 
* Hello world! 
* 
*/ 
public class App 
{ 
    public static void main(String[] args) 
    { 
     System.out.println("Hello World!"); 

     WebDriver driver = null; 

//  System.setProperty("webdriver.chrome.driver", "chromedriver"); 
     //Set up 
     ChromeOptions options = new ChromeOptions(); 
     options.setBinary("/usr/bin/google-chrome"); 
     options.addArguments("--headless"); 
     options.addArguments("--disable-gpu"); 
     options.addArguments("--screenshoot"); 
     driver = new ChromeDriver(options); // dies here <- 

     driver.get("http://www.google.com"); 

     //Tear down 
     driver.quit(); 

    } 

} 

コンソール出力:グーグル・クローム端末から正常に動作

Hello World! 
/opt/google/chrome/google-chrome: symbol lookup error: /opt/google/chrome/lib/libgtk-3.so.0: undefined symbol: g_log_structured 
Nov 06, 2017 1:44:12 PM org.openqa.selenium.os.UnixProcess checkForError 
SEVERE: org.apache.commons.exec.ExecuteException: Process exited with an error: 127 (Exit value: 127) 
Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure. 
Build info: version: '2.52.0', revision: '4c2593cfc3689a7fcd7be52549167e5ccc93ad28', time: '2016-02-11 11:22:43' 
System info: host: 'ip-172-31-43-139', ip: '172.31.43.139', os.name: 'Linux', os.arch: 'amd64', os.version: '4.9.51-10.52.amzn1.x86_64', java.version: '1.7.0_151' 
Driver info: driver.version: ChromeDriver 
     at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:665) 
     at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:249) 
     at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131) 
     at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:144) 
     at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:170) 
     at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:159) 
     at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:148) 
     at hu.csani.aws_test.App.setUp(App.java:33) 
     at hu.csani.aws_test.App.main(App.java:19) 
Caused by: org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start. 
Build info: version: '2.52.0', revision: '4c2593cfc3689a7fcd7be52549167e5ccc93ad28', time: '2016-02-11 11:22:43' 
System info: host: 'ip-172-31-43-139', ip: '172.31.43.139', os.name: 'Linux', os.arch: 'amd64', os.version: '4.9.51-10.52.amzn1.x86_64', java.version: '1.7.0_151' 
Driver info: driver.version: ChromeDriver 
     at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:178) 
     at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:166) 
     at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:78) 
     at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:644) 
     ... 8 more 
Caused by: org.openqa.selenium.net.UrlChecker$TimeoutException: Timed out waiting for [http://localhost:22678/status] to be available after 20005 ms 
     at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:107) 
     at org.openqa.selenium.remote.service.DriverService.waitUntilAvailable(DriverService.java:175) 
     ... 11 more 
Caused by: com.google.common.util.concurrent.UncheckedTimeoutException: java.util.concurrent.TimeoutException 
     at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:143) 
     at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:80) 
     ... 12 more 
Caused by: java.util.concurrent.TimeoutException 
     at java.util.concurrent.FutureTask.get(FutureTask.java:201) 
     at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:130) 
     ... 13 more 

...

答えて

0

はJAVA 8にあなたのJavaを更新しよう(1.8)

関連する問題