mvn-зависимость, вызывающая ошибки NoSuchMethod с htmlunit

1

У меня есть зависимость:

<dependency>
    <groupId>net.sourceforge.htmlunit</groupId>
    <artifactId>htmlunit</artifactId>
    <version>2.10</version>
</dependency>

И запустите тест, который включает тестирование веб-сайта для отправки формы. Прекрасно работает. Я упакую это в свою локальную mvn install repo mvn install и включаю ее в другой более широкий проект.

Выполнение mvn dependency:tree -Dverbose -Dincludes=net.sourceforge.htmlunit, похоже, не обнаруживает ничего неблагоприятного

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ myproject ---
[INFO] com.myproject:myproject:war:1.0-SNAPSHOT
[INFO] \- com.myproject:myproject:mp:jar:1.0:compile
[INFO]    \- net.sourceforge.htmlunit:htmlunit:jar:2.10:compile
[INFO]       \- net.sourceforge.htmlunit:htmlunit-core-js:jar:2.10:compile

Поэтому я не думаю, что какой-либо из других депов вызывает проблему. Однако, если я копирую/вставляю тест из базового проекта в более широкий, я всегда получаю ошибки:

java.lang.NoSuchMethodError: com.gargoylesoftware.htmlunit.html.HtmlPage.getElementById(Ljava/lang/String;)Lcom/gargoylesoftware/htmlunit/html/HtmlElement;

Я убедился, что моя IDE не кэширует какую-то изворотливую библиотеку где-нибудь, насколько я могу сказать, что она чиста. Есть идеи?

благодаря

  • 1
    у вас есть gwt артефакты mvn dependency:tree -Dincludes="com.google.gwt:gwt-dev" ?
  • 0
    Нет, но это часть проекта Vaadin, который находится на вершине gwt ... Gwt где-нибудь использует HtmlUnit?
Показать ещё 2 комментария
Теги:
maven
htmlunit

1 ответ

1
Лучший ответ

Проблема в том, что у вас есть этот класс, исходящий из какого-то другого артефакта, так как вы подтвердили, что он напрямую не идет из htmlunit с другой версией, он должен быть затенен в какой-нибудь другой банке

для jvm, чтобы получить правильный класс, поставьте зависимость htmlunit на верхнюю часть зависимости, чтобы она была первой в classpath с приоритетом

Ещё вопросы

Сообщество Overcoder
Наверх
Меню