首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我如何让Tomcat为OpenJPA类学习增强功能?

我如何让Tomcat为OpenJPA类学习增强功能?
EN

Stack Overflow用户
提问于 2013-06-23 12:31:12
回答 1查看 563关注 0票数 0

由于缺乏知识,我遇到了一个问题。我使用OpenJPA作为JPA实现和Tomcat服务器来运行我的应用程序,也使用Idea12作为ide。

我有一个任务-提供开放的jpa增强在构建时。为此,首先我拒绝OpenJPA在运行时通过将此属性添加到persistence.xml来增强实体:

代码语言:javascript
运行
复制
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported"/>

现在,OpenJPA不会像我希望的那样在运行时增强类。

之后,我在ant-build.xml中编写了一个增强目标。它工作正常,并使用编译的类创建/build目录。如果我查看已编译的类代码,就会看到OpenJPA - pcStateManager和其他字段的附加字段。好吧,那太好了。

现在的问题是,当我通过Idea开始Tomcat的时候,它不需要我的强化课程。我想Tomcat甚至不知道,我加强了我的课程。似乎他再次编译了代码,并使用未增强的类启动了应用程序。当然,当我开始使用数据库时,会有一个例外。

那么,是否可以配置Tomcat,所以他从/build目录中获取了我的类?

我也尝试使用一些想法插件来增强,但它们并没有解决问题--我也有同样的例外,类是未增强的。

upd两个增强的idea插件: OpenJPA增强器和数据核子与OpenJPA扩展集成并不能解决这个问题。所以这让我觉得有些地方出了问题。也许主要的问题是猫的设置?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-04 16:32:10

如果有人感兴趣,以下是解决办法:

  1. 您需要打开Idea #项目结构并选择包含类的模块
  2. 您需要将" output“属性从”继承项目编译输出“切换到”使用模块编译输出路径“,并使用增强的类指定目录。
  3. 仅此而已,当Tomcat构建WAR文件时,他将接受您的增强类。祝好运。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17260765

复制
相关文章

相似问题

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