Невозможно импортировать пакеты javax.ejb. *
У меня возникли проблемы при построении сеанса EJB
bean.
Невозможно найти следующий packages
:
import javax.ejb.LocalBean;
import javax.ejb.Stateful;
import javax.ejb.TransactionManagement;
import javax.ejb.TransactionManagementType;
Некоторые решения подразумевали добавление библиотек j2ee.jar
и javaee
.jar в путь сборки java.
Я использую jdk-7u75-windows-x64
и java_ee_sdk-7-windows-ml
и не могу найти ни одну из этих библиотек в данном месте ($ JAVA_HOME\lib). Я использую eclipse (кеплер) на машине Windows 7 x64
Ответы
Ответ 1
javaee.jar не содержит ни eclipse, ни java (jdk). Файл должен быть загружен вручную и добавлен в путь сборки проекта. Java ee 7 api можно найти здесь.
В качестве альтернативы можно использовать зависимость maven:
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
</dependency>
Ответ 2
API EJB находится в библиотеках JavaEE, которые, как вы правильно указали, распространяются вместе с библиотекой j2ee.jar. Если вы используете Eclipse, его путь к классам может указывать на стандартные библиотеки Java, а не на корпоративные библиотеки. Вы можете попробовать две вещи:
- Скомпилируйте и запустите свой код из командной строки. Установите% JAVA_HOME%, чтобы указать каталог установки java_ee_sdk-7-windows-ml и добавить% JAVA_HOME%/bin в% PATH%.
- Найдите библиотеку Enterprise и добавьте ее в свой CLASSPATH в Eclipse. CLASSPATH устанавливается путем перехода к свойствам проекта и выбора опции "Добавить внешнюю библиотеку/файл jar". Добавьте все файлы jar, найденные в каталоге установки EE, в путь сборки.
Ответ 3
Я тоже сталкиваюсь с этой ошибкой. Я следую руководствуясь примером того, как написать сервис SOAP на Java, так как я n00b. Мой оператор import javax.ejb.Stateless
вызывает ошибку, говорящую, что это не может быть решено.
Так как этот ОП был написан в 2013 году, я был немного скептически настроен... думая, что мне может понадобиться немного помассировать это решение.
Однако я добавил javaee.jar в качестве внешнего jar в библиотеки, и это было исправлено !! Спасибо!