Использование Wildfly 8.2.0.Final, который, как я считаю, использует Weld 2.2, я воспроизвел эту проблему с помощью двух простых классов в проекте Maven multimodule. Один производит javax.ws.rs.client.Client
, другой имеет точку впрыска для того же самого. Аркиллианское развертывание завершилось неудачей с WELD-001408
: неудовлетворительные зависимости. Производитель находится в библиотечном банке, который входит в комплект поставки для потребителя WEB-INF/lib
. Производитель имеет beans.xml
в META-INF
с discovery-mode=annotation
, а потребитель имеет номер WEB-INF
с discovery-mode=all
.Weld не может найти метод создания CDI в библиотеке jar
Действия, предпринимаемые для воспроизведения: Загрузите this project и запустите mvn clean install
из корневого каталога.
Это критическая ошибка. Есть некоторые other SO сообщения о Weld неудовлетворительных зависимостях, но большинство из них связано с отсутствием beans.xml
. С CDI 1.2, beans.xml
не является обязательным, хотя в моем примере есть пара. Есть идеи?
Полное раскрытие: Также отправленный в Weld форуме 255328
Я не смог воспроизвести ваш сценарий. У меня есть потребитель, который правильно вводит клиента. Кроме того, просто напечатал введенный тип: [email protected] – maress
@maress Демо-проект был ошибкой, которую я исправил, и теперь он работает. Однако реальный проект, который имеет эту проблему, по-прежнему нарушается. Я пытаюсь выяснить различия, если они есть. –
@maress См. Мой ответ ниже. –