【问题标题】:Exception when compiling with ant用ant编译时出现异常
【发布时间】:2011-06-11 01:19:31
【问题描述】:

我希望以前没有人问过这个问题(我找不到任何东西,但这可能只是搜索不佳)。我通过在我的根目录中运行 ant 进行编译。但是,我收到此错误:

class file has wrong version 50.0, should be 49.0

我知道这是因为它需要 Java 1.6,并且正在使用 1.5,但我的 mac 也有 Java 1.6(我已检查 /System/Library/Frameworks/JavaVM.framework/Versions)。如何让 ant 运行 1.6 以便我可以编译?

编辑: 我已将 Java 1.6 的正确路径添加到 /etc/profile,并且 export PATH=$JAVA_HOME/bin:$PATH,在此行之后。执行 java -version 会给出正确的版本(1.6.0),但运行 ant -v 仍然会产生相同的错误,并指出正在使用 Java 1.5。

有谁知道我如何强制 ant 使用 Java 1.6?!

【问题讨论】:

    标签: java macos ant compilation version


    【解决方案1】:

    一种简单的方法是将JAVA_HOME 环境变量设置为指向您要使用的jdk。

    有很多方法可以做到这一点。例如,如果您使用的是 mac/linux,则可以将其添加到 /etc/profile

    export JAVA_HOME=/path/to/java
    

    在 Windows、IIRC 上,我的电脑/属性中有一个菜单。

    【讨论】:

    • 我找不到我的个人资料文件。它应该在我的主目录中吗?
    • @tiswas 然后创建它。这是/etc/profile 文件,与主目录无关。每次在终端中启动 bash 会话时,它都会被执行。 (其他地方也可以放,想放home目录可以google)
    • 我在 /etc 中使用以下行创建了配置文件:export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home 但运行时我仍然遇到同样的问题蚂蚁..
    • @tiswas 您必须启动新的 ssh 会话(例如,打开新的终端选项卡)才能使更改生效。然后,您可以执行echo $JAVA_HOME 并查看它是否存在。对我来说,它产生/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home
    • 我想我找到了我的问题。 /etc 中已经有一个配置文件。我正在尝试编辑它(为 JAVA_HOME 插入我的行),但我无法保存,因为它是只读的。我已经尝试过 TextEdit 和 vi ..
    猜你喜欢
    • 2015-02-16
    • 1970-01-01
    • 2012-03-31
    • 1970-01-01
    • 2019-06-22
    • 1970-01-01
    • 1970-01-01
    • 2013-01-11
    • 2023-03-28
    相关资源
    最近更新 更多