【问题标题】:Android Studio won't start, libjli.dylib too shortAndroid Studio 无法启动,libjli.dylib 太短
【发布时间】:2017-05-18 03:48:33
【问题描述】:

无法打开 Android Studio 3.0 Preview,我在同一台机器上运行 Android Studio 2.3,安装了 Java 1.6 和 Java 1.8,JAVA_HOME 配置为 1.8 版本。这个新的 Android Studio 版本仍然没有打开。

尝试直接从studio文件打开,出现如下错误:

allVms required 1.8*,1.8+
Cannot load JVM bundle: Error Domain=NSCocoaErrorDomain Code=3587 "dlopen_preflight(/Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib): no suitable image found.  Did find:
        /Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib: file too short
        /Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib: file too short" UserInfo={NSLocalizedFailureReason=The bundle is damaged or missing necessary resources., NSLocalizedRecoverySuggestion=Try reinstalling the bundle., NSFilePath=/Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib, NSDebugDescription=dlopen_preflight(/Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib): no suitable image found.  Did find:
        /Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib: file too short
        /Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib: file too short, NSBundlePath=/Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk, NSLocalizedDescription=The bundle “OpenJDK 8” couldn’t be loaded because it is damaged or missing necessary resources.}

仔细观察这一行:

libjli.dylib: file too short, NSBundlePath=/Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk, NSLocalizedDescription=The bundle “OpenJDK 8” couldn’t be loaded because it is damaged or missing necessary resources.}

我尝试发现捆绑的 JDK 有问题,看起来不错,下载的存档没有问题。有没有人遇到过这种情况?

【问题讨论】:

    标签: java android-studio intellij-idea preview


    【解决方案1】:

    当我发现问题时,我正要发布问题。

    对我来说,问题是 MacOS 文件夹中的 libjli.dylib 文件,它不是文件,而是指向真实文件的符号链接,但是当我解压缩它时,它失去了它作为符号链接,并成为一个空文件。删除以下文件,并创建一个新的符号链接解决了这个问题。

    /Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib
    

    这个 ^ 人链接到这个:

    /Applications/Android Studio 3.0 Preview.app/Contents/jre/jdk/Contents/Home/jre/lib/jli/libjli.dylib
    

    鉴于您的 Android Studio 应用位置是我的 /Applications/Android Studio 3.0 Preview.app,以下命令为我解决了这个问题:

    首先删除:

    rm /Applications/Android\ Studio\ 3.0\ Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib
    

    然后新建一个链接:

    ln -s /Applications/Android\ Studio\ 3.0\ Preview.app/Contents/jre/jdk/Contents/Home/jre/lib/jli/libjli.dylib /Applications/Android\ Studio\ 3.0\ Preview.app/Contents/jre/jdk/Contents/MacOS/libjli.dylib
    

    只需像往常一样打开 Android Studio

    【讨论】:

    • 天哪!我终于可以t believe Its 工作了!我已经阅读了所有的互联网,但没有任何效果!先生,您应该获得奖牌!!!
    • 这在 Android Studio 3.2 Preview 上也对我有用(删除和重新链接),但第一个文件不是符号链接。
    • 这个问题再次出现在我面前,最后我知道它为什么会发生。作为一名前 Windows 用户,我一直在寻找 Total Commander 的替代品,并开始使用 Double Commander 来处理文件。事实证明,这不是一个好主意,当我使用 Finder 将 Android Studio 捆绑包复制到 Applications 文件夹时,它运行良好,但在此之前,当我使用双指挥官执行此操作时,我一直遇到这个问题。所以我猜双指挥官从文件中删除了符号链接属性
    猜你喜欢
    • 2013-05-10
    • 2013-05-11
    • 1970-01-01
    • 2018-02-11
    相关资源
    最近更新 更多