gpt4 book ai didi

java - Maven Eclipse 插件和 openjpa 增强的问题

转载 作者:行者123 更新时间:2023-11-30 11:42:02 26 4
gpt4 key购买 nike

我们当前的项目是在 STS(Eclipse) 上将 Spring 3/OpenJPA 与 Roo 和 Maven 集成。 M2E 插件有点问题,因为它无法处理实体增强。

所以从编程的角度来说,我们不能在Eclipse下的Maven上一键构建整个项目,而是要让STS(Eclipse)构建,这有点笨拙> 首先运行项目,然后运行 ​​Ant 脚本来增强 实体,然后刷新 项目,然后刷新 服务器部署。不是很有效。

我想这是一个问题有一段时间了,所以创建这个线程以查看是否有任何更新。

好像有个工具可用( OpenJPA Eclipse Tooling Builder ) 但是好像不支持最新的Eclipse(STS 2.9.1是基于Eclipse 3.7的,那个工具只覆盖到3.4)

所以问题就变成了:有没有什么方法(或工具)我们可以将所有东西(构建编译增强)集成在一起(可能在 Maven 上只设计 POM )?

很高兴学习任何建议。谢谢。

最佳答案

我在使用 eclipse kepler 和 OpenJPA 2.2.1 时遇到了同样的问题。

解决方案很简单,但有点脏。

首先,您需要从该站点安装 OpenJPA m2e 连接器:

http://openjpa-maven-connector.googlecode.com/svn/trunk/openjpa-connector-update-site

接下来,您必须修改您的 POM,并在 openjpa-maven-plugin 插件的元素旁边(在构建元素内)放置下一个定义:

<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>openjpa-maven-plugin</groupId>
<artifactId>openjpa-maven-plugin</artifactId>
<versionRange>[1.0,)</versionRange>
<goals>
<goal>enhance</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>

因此构建元素应该如下所示(使用您自己的实体包):

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<verbose>true</verbose>
<compilerVersion>1.6</compilerVersion>
<source>1.6</source>
<target>1.6</target>
<debug>true</debug>
<debuglevel>lines,vars,source</debuglevel>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa-maven-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>mappingtool</id>
<phase>process-classes</phase>
<goals>
<goal>enhance</goal>
</goals>
</execution>
</executions>
<configuration>
<includes>
com/xxxx/xxxx/*
</includes>
</configuration>
</plugin>
</plugins>

<pluginManagement>
<plugins>
<!--This plugin definition only affects eclipse, not the mvn command execution -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>openjpa-maven-plugin</groupId>
<artifactId>openjpa-maven-plugin</artifactId>
<versionRange>[1.0,)</versionRange>
<goals>
<goal>enhance</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>

关于java - Maven Eclipse 插件和 openjpa 增强的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11978103/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com