V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
V2EX  ›  Java

关于 Yosemite 上的 javac 位置

  •  
  •   Livid · 2015-06-02 17:04:03 +08:00 · 5958 次点击
    这是一个创建于 3248 天前的主题,其中的信息可能已经有所发展或是发生改变。

    运行:

    javac -version
    

    得到的错误提示是:

    Unable to locate an executable at "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/javac" (-1)
    

    看起来 Yosemite 上的默认的 JAVA_HOME 是位于一个很诡异的位置。或许应该自己在 .profile 里自己完全指定全套路径?还是应该去修改系统里某处的某个配置文件呢?

    16 条回复    2015-07-06 21:47:54 +08:00
    yukirock
        1
    yukirock  
       2015-06-02 17:08:10 +08:00
    安裝 JDK 的話它不是會把這些都配置好麼?
    kokutou
        2
    kokutou  
       2015-06-02 17:10:09 +08:00 via Android
    你没装Java吧。。。
    undeflife
        3
    undeflife  
       2015-06-02 17:10:47 +08:00
    别的问题导致的吧
    [5:09:57 PM] ~ ❯❯❯ javac -version
    javac 1.7.0_75
    [5:10:01 PM] ~ ❯❯❯ which javac
    /usr/bin/javac
    GordianZ
        4
    GordianZ  
    MOD
       2015-06-02 17:10:48 +08:00
    没装 JDK 只有 JRE?
    jjgod
        5
    jjgod  
       2015-06-02 17:11:16 +08:00
    你直接运行 `javac` 跟 `JAVA_HOME` 环境变量的值有什么关系?这难道不是因为你的 PATH 设得有问题么?

    我这里是:

    $ ls -lh `which javac`
    lrwxr-xr-x 1 root wheel 75B May 13 17:09 /usr/bin/javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac

    可以看到没有任何问题,所以我怀疑是你自己把自己的设置搞坏了。
    shiznet
        6
    shiznet  
       2015-06-02 17:11:40 +08:00
    目测你没有装JDK 这个是JRE的路径
    Livid
        7
    Livid  
    MOD
    OP
       2015-06-02 17:34:24 +08:00   ❤️ 1
    确实是我的问题,估计是之前根据 SO 上的某个答案在 .profile 设置了一个 JAVA_HOME。去掉那一行之后就好了。

    http://stackoverflow.com/questions/19533528/installing-java-on-os-x-10-9-mavericks
    ruchee
        8
    ruchee  
       2015-06-02 17:54:37 +08:00
    写下面一句到.bashrc

    export JAVA_HOME=$(/usr/libexec/java_home)
    ruchee
        9
    ruchee  
       2015-06-02 17:55:06 +08:00
    @ruchee 哦,看错问题,忽视就好
    6david9
        10
    6david9  
       2015-06-02 19:54:13 +08:00
    /usr/libexec/java_home
    只能帮你到这里了。。。。。。。。。
    anthonyeef
        11
    anthonyeef  
       2015-06-02 20:03:31 +08:00
    敲了一下那个命令发现自己的没问题:)
    当初入手这台Mac后直接用brew安装一切东西是正确的:)
    感觉我完全没有担心过这些路径之类的问题:)
    vjnjc
        12
    vjnjc  
       2015-06-02 23:24:49 +08:00
    ➜ ~ ll `which javac`
    lrwxr-xr-x 1 root wheel 75B 11 23 2014 /usr/bin/javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac
    我的是这里,看起来路径蛮正常的
    vjnjc
        13
    vjnjc  
       2015-06-02 23:29:12 +08:00
    ➜ ~ echo $JAVA_HOME
    /Library/Java/JavaVirtualMachines/jdk1.7.0_10.jdk/Contents/Home
    ➜ bin ll `which java`
    lrwxr-xr-x 1 root wheel 72B 11 23 2014 /usr/bin/java -> /Library/Java/JavaVirtualMachines/jdk1.7.0_10.jdk/Contents/Home/bin/java

    好像还是有点不正常,我是手动export JAVA_HOME了,应该javac在 $JAVA_HOME/bin/javac处,但好像默认javac用了系统自带的
    justjavac
        14
    justjavac  
       2015-06-03 09:29:51 +08:00
    前面忘记加 just 了吧。
    opkg
        15
    opkg  
       2015-06-06 12:36:43 +08:00 via Android
    @justjavac 配合你的用户名看 233333
    kaneg
        16
    kaneg  
       2015-07-06 21:47:54 +08:00 via iPhone
    自己重新从oracle官方下载最新的jdk装一遍就OK了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1202 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 23:04 · PVG 07:04 · LAX 16:04 · JFK 19:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.