如何以编程方式更改编译器合规性级别?

时间:2010-04-19 12:52:13

标签: java eclipse

您好我正在使用eclipse 3.2,我想将我的编译器合规性级别从1.4更改为1.5(即5.0)或更高..使用java程序?不手动..意思我的java程序会自动执行它...任何人都可以告诉我该怎么做??

5 个答案:

答案 0 :(得分:1)

我可能会解释这个错误。所以,如果我这样做,我会道歉。

对我而言,这听起来像是试图让你的应用只用1.5或更高版本编译,对吧?在这种情况下,您可以使用maven编译器插件使其仅使用jdk 1.5进行编译,并相应地设置您的maven存储库。

以下是步骤:

  1. 首先在你的电脑或服务器上安装maven,无论什么情况适用。这有一步一步的指示。
  2. 然后自己创建一个pom.xml文件或使用mvn create artifact为您创建它。此链接maven.apache.org/guides/getting-started / ...将指导您完成该过程。
  3. 如果尚未添加编译器合规性,则将以下内容添加到pom.xml中。您将在该页面上注意到maven编译器插件。
  4. 运行mvn install。

答案 1 :(得分:0)

这似乎是自引用的..你如何选择以一种实际在你想要编译的内部声明的方式编译某些东西?当 javac 开始编译时,它应该已经知道要使用的合规级别。

我认为你可以使用JavaCompiler界面(apidoc here)来做到这一点,但你必须做一些不那么简单的事情。

答案 2 :(得分:0)

你真的在问“如何编译我的程序,以便它可以在1.4和1.5上运行?”

编译器的-target 1.4选项将生成可由1.4 JVM加载的.class文件。但是,这通常是不够的。您还需要确保不使用任何类,或调用1.4 API中定义的节点的任何方法。

-source 1.4选项无济于事。它会禁用泛型和assert作为关键字,但它不会阻止您使用新API。

最好的方法是使用1.4 JDK构建。

答案 3 :(得分:0)

抱歉,我没有收到问题......

您要实现的目标是更改IDE中的配置值。

在Eclipse中,您可以为所有项目设置默认合规级别。 如果需要其他设置的项目,您可以配置此项目特定。

您所做的所有设置都会保存在名为.settings的子文件夹的项目文件夹中。 如果您正在使用eclipse,请尝试使用“导航器视图”来查看它。

合规级别存储在名为“org.eclipse.jdt.core.prefs”的文件中:

org.eclipse.jdt.core.compiler.compliance=1.4

没有任何意义,你的程序依赖于你的IDE改变任何值......

如果要更改合规性级别,则必须执行此操作一次。即使您将项目移动到另一个工作区等,Eclipse也会识别您的设置。

那么需要自动完成一项简单的任务(只需3次点击......),你只需做一次吗?

答案 4 :(得分:0)

查看工作区中每个项目的根目录中的“.project”文件。