如何设置为JAVA 6和JAVA 7 JRE开发的Eclipse执行环境和项目?
我问这个是因为并非所有开发用于JAVA 6的程序都将在JAVA 7中运行。
在这种情况下例如:
我需要使用JAVA API interface
,此接口的JAVA 6版本是:
public interface Foo {
int getValue();
}
但是,interface
的JAVA 7版本是:
public interface Foo {
int getValue();
int getNewValue();
}
现在,如果我像这样对我的程序进行编码:
public class FooImp implements Foo {
public static void main( String[] args ) {
}
public int getValue() {
return 1;
}
}
这将在JRE 6上正常运行。但是,如果我在JRE 7上运行它将无法工作,因为Foo
接口需要实现操作getNewValue
。
在这种情况下,使用Eclipse编写程序并确保它将在JRE 6和7上运行的最佳解决方案是什么?我应该如何配置执行环境并运行测试?
注意:此时此刻,我的工作方式如下:
注2:专门搜索java.sql.ResultSet
问题,我发现了这个问题:
Java 6 Source backward-compatibility and SQL
现在我看到,这个问题在JDBC中很常见,源代码兼容性因频率而中断。所以,我认为这里没有太多要讨论的内容。谢谢大家的回答和努力。
答案 0 :(得分:0)
我不知道是否有一种优雅的方法可以做到这一点,但以下方法可行。
将您的代码库重新组织并重构为两部分:
将Java 6和Java 7代码放入单独的Eclipse Java项目中。设置Eclipse项目首选项以为每个项目选择适当的Java合规性级别;例如“项目>属性> Java编译器”......
如果您还没有这样做,请进一步重构代码,以便核心动态加载Java 6和Java 7特定类;例如使用Class.forName(...)
这应该允许您在同一个Eclipse工作区中开发Java 6和Java 7部件。
您还应该能够使用“运行>运行配置”和/或“运行>调试配置”来为Java 6和Java 7创建用于Eclipse内测试的启动器。
注意:我自己没试过。如果有效,请告诉我们。