2017-02-18 14 views
1

MavenベースのプロジェクトでSelenium WebDriver 3.0.1を使用しています。このコードスニペットが失敗した(コンパイルされません):Selenium WebDriver 3.0.1 Mavenリポジトリのselenium-api-3.0.1.jarにアクションクラスがありません

Actions myActions = new Actions(myWebDriver); 

org.openqa.selenium.interactions.Actionsクラスは達人からダウンロードしたセレン-API-3.0.1.jarから欠落しているため。 これはのpom.xmlの関連部分である:

<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-server</artifactId> 
    <version>3.0.1</version> 
</dependency> 

が、両方のケースでorg.openqa.selenium.interactions:

<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-firefox-driver</artifactId> 
    <version>3.0.1</version> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-support</artifactId> 
    <version>3.0.1</version> 
    <type>jar</type> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-api</artifactId> 
    <version>3.0.1</version> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-htmlunit-driver</artifactId> 
    <version>2.52.0</version> 
</dependency> 
<dependency> 
    <groupId>org.seleniumhq.selenium</groupId> 
    <artifactId>selenium-remote-driver</artifactId> 
    <version>2.31.0</version> 
</dependency> 

私はまたのpom.xmlで、この代替依存性をテストしました。ダウンロードされたセレンのapiアーティファクトにアクションクラスがありません。

grepcode.comを使用してMavenリポジトリ内のクラスを検索すると、2.47.1以前のバージョンのみが検索されます。

私はhttp://www.seleniumhq.org/download/ URLから直接セレンクライアント& webdriverを言語バインディングのzipパッケージをダウンロードし、含まれているクライアント・コンバインド3.0.1-nodeps.jarファイルorg.openqa.selenium.interactions.Actionsクラスを含んでいます。

私は何かが欠けているようです...しかし、Mavenの依存関係を修正する方法は本当に分かりません。どんな援助も熱狂的に受け入れられるでしょう!

答えて

1

Actionsクラスを含むorg.openqa.selenium.interactionsパッケージのように見えますが、selenium-remote-driverに移動しました。

あなたは(それが順番にselenium-remote-driverに依存selenium-chrome-driverによって異なります)に直接selenium-remote-driverに依存関係を追加、または、さらに簡単、selenium-javaへの依存関係を追加することができます。後者のオプションを使うと、他の多くの明示的な依存関係も取り除くことができるはずです。

+0

あなたは正しいです! - 依存関係を単一の 'selenium-java'依存関係に変更することで問題が解決されました。最初の提案は役に立たない:私の最初のpom.xml抽出に示されているように、 'selenium-remote-driver'の依存関係はすでに存在していましたが、バージョン= 2.31.0で、奇妙なことに、最近のバージョンが利用可能です(しかし、見知らぬ人でさえ、 'selenium-java'の依存関係は' selenium-remote-driver'のバージョン3.0.1を今ダウンロードしています)。 –

+0

もちろん、助けてくれてありがとう! –

関連する問題