繁体   English   中英

如何在Java 5环境中使用Java 6功能

[英]How to use java 6 features in a java 5 environment

我面临一个奇怪的问题。 我用Java 6开发了Java Web应用程序,并将其托管在服务器上时,自Java 5服务器以来它显示错误。 我在代码中使用了注释,休眠,REST API,现在我想在Java 5环境中转换代码。

有可能这样做吗? 如果是,怎么办? 还是针对此问题有其他解决方法? 请告诉我。

@all:这是我得到的错误:

替代文字

我不确定您的构建过程是什么,但是您需要针对特定​​目标(如Java 1.5)编译代码。

  • 如果您从命令行使用javac,请查看-target开关
  • 如果您使用的是ant,请查看target属性。

如果使用的是Java 1.6特定的库,则会遇到问题。 当您尝试运行代码/ webapp时,您将知道这一点。

我希望这有帮助。

从您的帖子中看来,您似乎在Java EE 5环境中使用Java EE 6功能。 如果您的应用程序。 服务器在其核心级别不支持此类功能,例如在Servlet 2.5环境中使用Servlet 3.0功能,那么您就不走运了。

但是,当使用诸如Hibernate之类的库功能时,您可以在Java EE 5环境中使用它。

Java 6作为一种语言与Java 5相同,但是库已更改。 同样,使用6中的JRE类和方法在5中无效。

更新 :从您的屏幕截图中,我看到您在较旧版本的Tomcat上使用Java 6编译类。 为Java 5编译它们。

您必须查看各个错误并找出缺少的内容。

JPA注释已经是Java EE 5的一部分,因此,如果“休眠”引起了问题,则意味着您实际上不在Java EE 5上运行,或者您正在使用特定于休眠的注释。 REST批注确实是在Java EE 6中添加的,但是可以通过将具有API的JAR以及实现(例如Apache Jersey)添加到应用程序的类路径中,相对轻松地在Java EE 5环境中使用。

顺便说一句,关于Java SE与Java EE,这里有些混淆。 您显然是在谈论Java EE功能,但是Java SE(大多数人在说“ Java”时会想到的)与Java EE之间有很大的区别。

您试图在Java 5上运行针对Java 6编译的类(Tomcat 5.x使用Java 5)。

  1. 您可以升级到Java 6。
  2. 您可以通过使用javac的“ -target”参数来将类编译为与Java 5兼容,但是此选项无济于事,因为servlet api出现了问题。 JEE6需要Java 6。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM