我想在我的哈德森集成服務器上執行Spring Roo項目(= Spring MVC + aspectj + hibernate)的構建。在java-6-openjdk中的javax.persistence
的項目配置TU使用
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>com.springsource.javax.persistence</artifactId>
<version>1.0.0</version>
</dependency>
構建與本地行家工作正常,但在服務器上的環境似乎注入的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 :)
分析(+1)。但我不認爲問題在於哈德森。我認爲maven的依賴是錯的 – 2010-11-19 11:35:53
我發現我的問題! Roo實際上爲您生成代碼。在我的本地機器上,我使用Roo 1.0.1生成JPA1代碼並添加了持久性v1依賴項。 但在服務器上,我安裝了生成JPA2代碼的roo 1.1,並嘗試基於我提交的pom.xml進行編譯。 – Nicolas 2010-11-19 11:57:16