我有一个项目,使用泛型和一些Java 1.5/6位碎片.是否可以编译此代码以在运行1.4 JRE的系统上运行?
我使用ANT构建脚本和javac任务来编译库.这个构建正常,而目标属性是1.5.
如果我将目标更改为1.4,则会出现以下错误:
generics are not supported in -source 1.4
(use -source 5 or higher to enable generics)
Run Code Online (Sandbox Code Playgroud)
所以我添加了一个source属性,并尝试使用值5和1.5.新错误:
javac: source release 5 requires target release 1.5
Run Code Online (Sandbox Code Playgroud)
我是否必须完成所有代码并更改1.5内容以使其工作?
在使用JDK 1.6编译时,是否可以选择构建在JRE 1.5上运行的Java代码?
PS:我是Java新手.
我写了一个java代码并编译它.(foo1.6.class)根据我的搜索,我的本地机器有Java 1.6,我上传的tomcat服务器foo1.6.class只接受版本号1.5这意味着我必须要编译Java 1.5?
我相信这是导致坏版本号错误被抛出的原因如下.
我的问题是,有什么方法可以使用1.5版本号编译我的Java文件?看着javac cmd但看起来它不是选项的一部分.但我不认为删除1.6和安装Java 1.5因为这个原因也不是很好的选择.人们如何应对这种情况?
提前致谢!
exception
javax.servlet.ServletException: Bad version number in .class file (unable to load class resume_builder.ResumeBuilder)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:273)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause
java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class resume_builder.ResumeBuilder)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1884)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:889)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1353)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1232)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:128)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
java.lang.Class.getConstructor0(Class.java:2671)
java.lang.Class.newInstance0(Class.java:321)
java.lang.Class.newInstance(Class.java:303)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:142)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Run Code Online (Sandbox Code Playgroud)