在我的一个应用程序中,我必须使用带有grails的geb。我安装了geb插件并添加了依赖selenium独立jar。
现在问题是我清理或编译时遇到了如下错误
交互模式退出时出现错误:加载器约束违规:当解析重写方法"org.apache.xerces.jaxp.SAXParserImpl.getXMLReader()Lorg/xml/sax/XMLReader;"
时,当前类(instance of org/codehaus/groovy/grails/cli/support/GrailsRootLoader)
及其超类加载器org/apache/xerces/jaxp/SAXParserImpl,
的类加载器instance of <bootloader>
),为签名中使用的类型org/xml/sax/XMLReader
设置不同的Class对象(使用--stacktrace查看完整的跟踪)
答案 0 :(得分:2)
在您的xml-apis
中排除Selenium对此BuildConfig.groovy
的传递依赖关系:
dependencies {
test("org.seleniumhq.selenium:selenium-htmlunit-driver:$seleniumVersion") {
exclude "xml-apis"
}
test "org.codehaus.geb:geb-spock:$gebVersion"
test "org.codehaus.geb:geb-junit4:$gebVersion"
}
有关详细信息,请参阅this example project。