无法导入javax.ejb。*包

时间:2013-12-31 15:20:26

标签: java eclipse java-ee ejb

我在构建EJB会话bean时遇到了麻烦。

无法找到以下packages

import javax.ejb.LocalBean;
import javax.ejb.Stateful;
import javax.ejb.TransactionManagement; 
import javax.ejb.TransactionManagementType;

有些解决方案暗示将库j2ee.jarjavaee。jar添加到java构建路径中。

我正在使用jdk-7u75-windows-x64java_ee_sdk-7-windows-ml,并且在给定位置找不到任何这些库($ JAVA_HOME \ lib)。我在Windows 7 x64机器上使用eclipse(kepler)

2 个答案:

答案 0 :(得分:31)

javaee.jar既没有eclipse也没有java(jdk)。必须手动下载该文件并将其添加到项目构建路径中。可以找到java ee 7 api here. 或者,可以使用maven依赖:

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>7.0</version>
</dependency>

答案 1 :(得分:3)

EJB API位于JavaEE库中,正如您正确指出的那样,它与j2ee.jar库一起分发。如果您正在使用Eclipse,则其类路径可能指向标准Java库而不是Enterprise库。你可以尝试两件事:

  1. 从命令行编译并运行代码。将%JAVA_HOME%设置为指向java_ee_sdk-7-windows-ml的安装目录,并将%JAVA_HOME%/ bin添加到%PATH%。
  2. 找到Enterprise库并将其添加到Eclipse中的CLASSPATH。通过转到项目属性并选择“添加外部库/ jar文件”选项来设置CLASSPATH。将EE安装目录中找到的任何jar文件添加到构建路径。