使用JDK 1.6(但不使用1.6的任何新特性)编译的applet可以在具有JRE 1.5的系统上工作吗?
发布于 2011-11-28 17:06:45
如果代码是使用编译器标志-target 1.6 (这是1.6JDK的默认标志)编译的,那么它的将不会在1.5JRE上运行。
但是,如果使用了标志-target 1.5 -那么它的将在1.5JRE上正常工作。
发布于 2011-11-28 17:10:23
不需要,编译后的代码需要JRE 1.6或更高版本。JDK1.6将生成版本为50.0的Java .class文件,而1.5将使用版本49.0。
使用javac -target 1.5生成JRE1.5可以使用的.class文件。请参阅http://docs.oracle.com/javase/6/docs/technotes/tools/windows/javac.html#options
发布于 2011-11-28 17:58:21
正如其他人提到的,您需要-target 1.5来生成1.5代码。为了使用-target 1.5,您还需要设置-source 1.5。使用1.5中未使用的1.6库的任何部分也会导致运行时失败,因此使用-bootclasspath指向1.5 rt.jar。为了完整性,“外部目录”(几乎所有代码都可以使用的库)应该用,IIRC,-Dext.dirs来设置(可能是空的)。
https://stackoverflow.com/questions/8293481
复制相似问题