首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Glassfish 3.1.2不包含javax.persistence jar

Glassfish 3.1.2不包含javax.persistence jar
EN

Stack Overflow用户
提问于 2016-10-08 07:30:47
回答 1查看 336关注 0票数 0

我正在尝试使用Eclipse 2和Glassfish 3.1.2,但是当我使用EclipseLink 2.1从表创建实体时,在构建路径中找不到javax.persistence。

这是正常行为吗?

  1. 我用eclipse创建了Oracle db连接
  2. 我用Glassfish 3安装了JEE6SDK
  3. 我启动了glassfish服务器,并配置了数据源和连接池。
  4. 我创建了一个JPA项目,并从db连接表中创建了实体。

我发现奇怪的是,位于glassfish/lib中的jee.jar只包含一个pom.xml

玻璃鱼不应该包含用jee标准开发的所有罐子吗?

我的项目是否意味着成为一个Maven项目,以便自动下载这个jars?我可以通过将我的项目配置为Maven项目来解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-08 16:17:47

玻璃鱼不应该包含用jee标准开发的所有罐子吗?

是的,它包含了所有需要的罐子,但只是间接的。尽管它是一个只有一个文件的jar文件,即MANIFEST.MF和包含您提到的pom文件的目录maven

但是,如果打开MANIFEST.MF文件,您将看到它指向Class-Path:条目中的许多jar文件,您需要这些jar文件才能开发JavaEE应用程序。

所以一切都有了,您只需要将这个文件添加到您的依赖项中,就可以编译您的JavaEE (Servlets、JSF、EJB、JPA、.)类并在服务器上部署。但是,这个(javaee.jar)必须是编译时依赖项,也就是说,不应该与应用程序一起打包,因为jars已经包含在服务器中。

我的项目是否意味着成为一个Maven项目,以便自动下载这个jars?

不是的。您的项目可以是但不应该是maven项目。例如,假设您有一个Eclipse项目,您希望在其中开发EJB应用程序。只需右键单击项目

  • 转到Properties -> Build Path页面并更改为Libraries选项卡
  • 点击Add External Jars ...
  • 转到Glassfish lib目录并添加javaee.jar,您就完成了。
  • 现在您可以使用所有的JavaEE注释和类。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39929883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档