有人可以告诉我jsr14
的javac
target选项在JDK7/8上仍然可用吗?
说,
$ javac -source 1.5 -target jsr14 Hello.java
最佳答案
我们在OSGi中大量使用-jsr14,因为它允许我们在API中使用泛型,但仍可以在1.4环境中部署,该环境在嵌入式系统中仍然很流行。不幸的是,他们用使与JDK 7不向后兼容Java 6和5。Javac1.7忽略了JAR文件中实际存在的通用信息。幸运的是,在运行时没有问题,因为无论如何该信息都将被忽略。而且这好像不是某些未记录的功能...
不幸的是,最前线的人常常对那些不能仅仅更新到最新和最伟大的人的关心。猜猜Oracle真的不再关心嵌入式市场了。
现在,我们可能必须交付两个JAR,一个用于嵌入式,一个用于JDK 7。
这是我们提交的错误报告:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7078419