2017-12-03 16 views
1

SeleniumとMavenを使用して新しいJavaプロジェクトを作成しました。Seleniumプログラムがコンパイルエラーをスローするorg.openqa.selenium.internal.Killableを解決できない

The type org.openqa.selenium.internal.Killable cannot be resolved. It is indirectly referenced from required .class files

:、私はこのコンパイルエラーを取得していますが

import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 

public class Start { 
    public static void main(String[] args) { 
     // declaration and instantiation of objects/variables 
     System.setProperty("webdriver.firefox.marionette", "D:\\geckodriver.exe"); 

     WebDriver driver = null; 
     try { 
      driver = new FirefoxDriver(); 
      String baseUrl = "https://www.google.co.in/"; 

      driver.get(baseUrl); 

     } finally { 
      driver.close(); 
     } 

    } 
} 

:これは私がその後、セレンのフレームワークを使用して、この基本的なJavaプログラムを作成し

<dependencies> 

    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>3.8.1</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>2.45.0</version> 
    </dependency> 
    <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-chrome-driver --> 
    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-chrome-driver</artifactId> 
     <version>3.8.1</version> 
    </dependency> 

</dependencies> 

のpom.xml内の関連コンテンツです

誰かが私が間違っていると示唆することができますか?

答えて

2

pom.xmlからこの依存関係を削除します。

<dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-chrome-driver</artifactId> 
     <version>3.8.1</version> 
    </dependency> 

あなたはvesrionセレンJavaバインディング(2015年2月に公開)の2.45.0を使用している:あなたは、コンパイルを調べると

<dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>2.45.0</version> 
    </dependency> 

を上記のパッケージの依存関係:https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java/2.45.0
あなたはこのパッケージd selenium-chrome-driver 2.45.0パッケージを利用しています。 Mavenはコンパイル時にこの依存関係を自動的に解決するので、このパッケージをpom.xmlに宣言する必要はありません。ファイル。


しかし、あなたは別のバージョン(最新3.8.1)を使用して、pom.xmlファイルに直接依存関係としてselenium-chrome-driverこのパッケージを宣言した場合、その後、Mavenは、コンパイル時にこのバージョン3.8.1代わりの2.45.0を使用することになり、これが原因となりますエラーがあり、互換性のないjarライブラリが使用されています。

+0

ありがとうございました!エントリを削除しても問題はほとんどありませんでした。ローカルMavenリポジトリに関連パッケージを再作成して解決しました – CuriousCoder

関連する問題