1

我有一些对 commons-httpclient 3.1 具有传递依赖的遗留项目。现在我正在尝试对其进行 Selenium 2 WebDrive 测试。据我了解,Selenium 2 需要 Httpclient 4.+。尽管两者都将被解析并放入类路径中,但 IDE 会抱怨

java.lang.NoSuchMethodError: org.apache.http.params.HttpConnectionParams.setSoReuseaddr(Lorg/apache/http/params/HttpParams;Z)V

因为 Httpclient 3.1 中的 HttpConnectionParams 没有该方法。

我搜索了互联网,发现了这个http://blog.teamextension.com/migrating-from-httpclient-3-1-to-4-0-34和许多其他帖子。大多数人手动替换jar并修改源代码中的导入路径。

由于我不允许编辑现有的源代码。我想知道是否有配置 Ivy.xml 以强制退出旧依赖项,或者使新添加的 Selenium 问题使用新的 Httpclient/core/mime 等。我试图排除 commons-httpclient 模块范围,但不知何故它仍然在类路径中。

希望我清楚地解释这个问题。我将不胜感激任何帮助。

4

0 回答 0