1

インストール済みの phantomjs バージョン (1.9.1) と共にgithub の最新バージョンの GhostdriverPhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_PATH_PROPERTYを使用するために、Java プログラムで機能を正しく設定するのが困難です。

これが私のJavaプログラムで行うことです

DesiredCapabilities caps = DesiredCapabilities.phantomjs();
caps.setCapability(
    PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
    "/xxx/phantomjs-1.9.1-linux-x86_64/bin/phantomjs" );
caps.setCapability(
    PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY,
    "/xxx/ghostdriver/src/main.js");
WebDriver driver = new PhantomJSDriver(caps);

を設定しないと、セレンドライバーは正しく起動しますがPhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY、テストでいくつかのエラーが発生します。これは、ゴーストドライバーの現在の開発者ブランチで修正されるはずです。そこで、このアドバイスに従い、Ghostdriver のカットテント github バージョンをセットアップしました。

ただし、次のエラーが表示されるようになりました。

[ERROR - 2013-07-12T10:22:36.897Z] GhostDriver - Main - Could not start Ghost Driver => {
  "message": "Could not start Ghost Driver",
  "line": 79,
  "sourceId": 140320571924032,
  "sourceURL": "/xxx/ghostdriver/src/main.js",
  "stack": "Error: Could not start Ghost Driver\n    at /xxx/ghostdriver/src/main.js:79",
  "stackArray": [
    {
      "sourceURL": "/xxx/ghostdriver/src/main.js",
      "line": 79
    }
  ]
}

私の質問は、これを修正する方法を知っている人はいますか? config.jsこれを機能させるには、どうにかしてゴーストドライバーを変更する必要がありますか?

情報:これは、ghostdriver の github の問題にもクロスポストしています。

4

4 に答える 4

5

だから私は同じ問題を抱えていました.それは私が使用しようとしていたポートがすでに使用されていたということでした. 別のポートを試してください。すなわち:

phantomjs --webdriver=8089 --webdriver-selenium-grid-hub=...

于 2013-10-18T16:53:16.193 に答える
2

実行中の phantomjs プロセスを強制終了して、再試行します。

ps aux | grep phantom
kill -9 <your phantom process id>

次に、phantomjs を再度実行してみてください。

于 2014-06-27T20:46:31.807 に答える
1

ポートが使用されているかどうかを確認することで、この問題を修正し netstat -tulnapました。使用中のすべてのポートのリストが表示されます。phantomjs が使用しているものを見つけます。次に、を使用してプロセスを強制終了できますfuser <your-port-number>/tcp -k。たとえば、私のポートは 4444 だったので、fuser 444/tcp -k

于 2015-11-10T17:12:51.690 に答える