gpt4 book ai didi

java-6-openjdk 中的 javax.persistence

转载 作者:行者123 更新时间:2023-12-04 06:41:06 25 4
gpt4 key购买 nike

我正在尝试在我的 hudson 集成服务器上构建 Spring Roo 项目(= Spring MVC + aspectj + hibernate)。

项目配置tu use

<dependency>
<groupId>javax.persistence</groupId>
<artifactId>com.springsource.javax.persistence</artifactId>
<version>1.0.0</version>
</dependency>

使用我的本地 maven 构建工作正常,但服务器上的环境似乎注入(inject)了一些其他版本的 javax.persistence导致这些错误:
[ERROR] The method createQuery(String) in the type EntityManager is not applicable for the arguments (String, Class<Long>)
[ERROR] The method createQuery(String) in the type EntityManager is not applicable for the arguments (String, Class<Folder>)

构建是使用 maven 运行的,它的配置是:
Apache Maven 2.2.1 (rdebian-4)
Java version: 1.6.0_18
Java home: /usr/lib/jvm/java-6-openjdk/jre
Default locale: en_US, platform encoding: ANSI_X3.4-1968
OS name: "linux" version: "2.6.32-5-amd64" arch: "amd64" Family: "unix"

编辑:我没有在本地和服务器上使用相同版本的 roo :)

最佳答案

您在项目中使用 JPA2 吗?

JPA2 是 Java EE 6 的一部分,据我所知,您使用的是 this方法:

<T> TypedQuery<T> createQuery(java.lang.String qlString, java.lang.Class<T> resultClass)

这种方法在 JPA1 (Java EE 5) 中不存在,您可以通过检查 EntityManager 看到只有在哪里
Query createQuery(String qlString)

存在。

所有这些都意味着 Hudson 正在使用 javax.persistence对于 JPA1。我没用过Hudson,所以你得看看能不能用 javax.persistence对于 JPA2。

关于java-6-openjdk 中的 javax.persistence,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4224259/

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