1

我正在使用带有休眠 3 的休眠工具。JDK 版本是 1.6。但是,当我运行这个休眠工具时,它默认采用 jdk 1.4,正如您在代码中看到的那样。正因为如此,我收到了这个错误。

16 [main] INFO org.hibernate.cfg.Environment - Hibernate 3.3.1.GA  
16 [main] INFO org.hibernate.cfg.Environment - hibernate.properties not found  
32 [main] INFO org.hibernate.cfg.Environment - Bytecode provider name : javassist  
32 [main] INFO org.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling  
63 [main] INFO org.hibernate.cfg.Configuration - configuring from resource: 
C:\Documents and Settings\lakhan\workspace\dpppbuild\dpp_core\build.xml:332:    java.lang.UnsupportedClassVersionError: com/pyyyy/pccc/dtt/core/hibernate/DppppProductMatchesPK : Unsupported major.minor version 51.0

请帮我解决这个问题。我特别想知道如何将目标 jdk 从 1.4 更改为 1.6。我正在使用 build.xml 来执行这个休眠工具。

4

2 回答 2

1

它不是默认为 jdk 1.4,而是说它正在使用“JDK 1.4 Timestamp handling”。

major.minor 版本 51.0 是 JDK 7,因此您使用的 JDK 版本太低。

于 2013-10-17T05:41:44.070 回答
0

您正在运行的应用程序似乎是使用更新版本的 JDK 构建的。您需要使用旧版本的 JDK 来构建您的应用程序,或者您可以使用新版本的 JDK 来运行您的应用程序。

或者,您可以指定在构建期间使用的 JDK 版本。

javac中,您应该标记源和目标:

javac -source 1.4 -target 1.4

如果您使用 Ant 构建,您应该这样做:

<javac srcdir="${src}"
         destdir="${build}"
         fork="true"
         source="1.4"
         target="1.4"
  />

如果您使用 Maven 构建,您应该这样做:

<plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <source>1.4</source>
          <target>1.4</target>
        </configuration>
      </plugin>
    </plugins>
于 2013-10-17T06:10:08.623 回答