Я новичок в Drools и довольно новичок в maven. Я пытаюсь включить Drools 6.0.1 в проект на основе Wildfly (8.0.0). Я использую текущую версию JBoss Developer Studio 7.1.1.GA на Redhat Linux. В Eclipse проект имеет ряд ошибок в модулях CDI, но строит без ошибок в maven. Автозаполнение Java работает правильно, когда я импортирую аннотации, но после импорта я получаю сообщение об ошибке в файле, показывающем
import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.context.Dependent;
import javax.enterprise.inject.Disposes;
import javax.enterprise.inject.Produces;
import javax.enterprise.inject.spi.InjectionPoint;
Все вышеперечисленное показывает один и тот же тип ошибки:
Only a type can be imported. javax.enterprise.inject.Disposes resolves to a package
Кажется, он ограничен включением javax cdi.
Это проект maven, и maven компилирует его без проблем. Кажется, только у Eclipse есть проблема.
У меня также установлен m2eclipse.
Кроме того, если я использую расширения синтаксиса Java 7, он тоже жалуется на них. В maven pom указана Java 1.7, в аспектах проекта указана версия 1.7, а уровень соответствия по умолчанию также равен Java 1.7. Но что-то где-то не нравится. Опять же, сборка maven работает. Проблемы есть только у Eclipse. Я подозреваю, что виноват плагин Eclipse Drools, поскольку я не вижу этого в проектах, отличных от Drools.
Я вижу это в стандартных файлах Java, а не в файлах .drl. Это довольно раздражает и расстраивает.
Я обнаружил, что это можно легко воспроизвести. Вам необходимо установить m2eclipse и установить плагин drools 6.0.1.Final 1. В Eclipse создайте новый проект drools 2. Преобразуйте проект в maven 3. Добавьте зависимость javax.enterprise:cdi-api (версия 1.1) 3. Maven > Обновите проект 4. отредактируйте java-файл в проекте и попробуйте добавить один из перечисленных выше импортов, и вы увидите ту же ошибку.
File -> Import -> Maven -> Existing Maven Projects
- person Jakub Kotowski   schedule 22.07.2014