【问题标题】:Oracle SQLDeveloper on MacOS won't open after installation of correct Java安装正确的 Java 后,MacOS 上的 Oracle SQLDeveloper 无法打开
【发布时间】:2018-11-15 10:38:29
【问题描述】:

我下载了 Oracle SQLDeveloper,但是当我打开它时,它说它至少需要 Java 8,并给了我下载的网站。我继续下载 Java 10.0.1,但是当我继续打开 SQL 时,它继续说它至少需要 Java 8。

我检查了 Java 10.0.1 是否已正确安装,我很确定它已正确安装。它显示在“系统偏好设置”中,点击后会很好地打开 Java 控制面板。

我使用的是 MacOS X El Captain 10.11.6。

【问题讨论】:

  • SQLDeveloper是哪个版本的,打开的时候报什么错?

标签: java oracle macos java-8 oracle-sqldeveloper


【解决方案1】:

Sqldeveloper 仅适用于 jre 8

A) 安装

brew tap AdoptOpenJDK/openjdk
brew install adoptopenjdk8

A.1) 可选 - 将以下内容添加到 .zshrc

jdk() {
      version=$1
      unset JAVA_HOME;
      export JAVA_HOME=$(/usr/libexec/java_home -v"$version");
      java -version
}

感谢 - Mac OS X and multiple Java versions

B) 权限

chmod +x /Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper.sh

C) 如下创建一个 sqldeveloper.zsh

#!/bin/zsh
source ~/.zshrc
jdk 1.8.0_291
/Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper.sh

【讨论】:

    【解决方案2】:

    上面的帖子是对的:SQLDeveloper only runs under Java 8

    这是违反直觉的,因为其他程序在至少 X 版本的软件(不是仅 X 版本)下运行。我一直在下载 Java 11,但没有成功。

    在一个月前的 1 次失败尝试和今天两个小时的搜索之后,我发现这个简单的修复方法对我有用

    解决方案

    1. 删除 Mac 上的以下 Java 文件和文件夹。
    • /Library/Internet Plug-Ins/JavaAppletPlugin.plugin
    • /Library/Java/JavaVirtualMachines/(删除当前java文件夹)

    1.1 移除插件: sudo rm -rf "/Library/Internet 插件/JavaAppletPlugin.plugin/" 或者,如果 sudo rm -rf 让您感到不舒服,您也可以: 使用(Command + Shift = G)“转到文件夹”并将其移至垃圾箱。

    1. 下载并安装 Java 8。 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    2. 启动 SQLDeveloper。

    【讨论】:

    • 是的,这是违反直觉的。
    • 这是我第二次遇到问题。这一次我有一些小的 Java 更新和 SQL 开发人员停止工作。我从 JavaVirtualMachines 文件夹中删除了最新版本
    • 我安装了 Java 13,但 SQL Developer 无法正常工作。我只是按照您的链接安装了 Java 8,然后它就开始工作了。谢谢!
    • 如果它对其他人有帮助,Oracle 更新了 Java JDK 11 并且 JDK 11.0.7 已通过 Catalina 认证,它也适用于 SQL Developer! oracle.com/tools/downloads/sqldev-v192-downloads.html
    • 这行得通。我不必删除 macOS Catalina 上的任何内容
    【解决方案3】:

    对于我的 mac Big Sur 11.1 版,单击 sql developer 图标不起作用。以下解决方法工作正常。

    cd /Applications/SQLDeveloper.app/Contents/resources/sqldeveloper

    zsh sqldeveloper.sh

    【讨论】:

    • 我也开始不得不这样做了。
    【解决方案4】:

    适用于使用 Big Sur 的 Mac 用户。 (我在 11.2.2):

    编辑以下文件:

    /Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper/bin/sqldeveloper.conf 
    

    并添加java 8的路径如下:

    SetJavaHome /Library/Java/JavaVirtualMachines/jdk1.8.0_281.jdk/Contents/Home
    

    【讨论】:

    • 谢谢,它对我有用。小心java home。如果您设置路径,您可以使用它,“jdk1.8.0_281.jdk”部分很可能会有所不同。添加此路径时使用您自己的版本。
    • 这对我使用 macOS Big Sur 版本 11.5.2 有效。我首先验证了 jdk 位置是否存在。
    【解决方案5】:

    我在我的 mac 上遇到了同样的问题。我的机器上有 JDK 15。我从here 安装了 JDK 8,并且刚刚根据How to set or change the default Java (JDK) version on OS X? 更新了 JAVA_HOME

    工作就像一个魅力!

    【讨论】:

      【解决方案6】:

      导航到 macbook SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper/bin 中的文件夹

      查找 sqldeveloper 文件(可执行文件)

      点击打开sql developer,你可以创建一个别名并在桌面保留快捷方式直接运行sql developer。

      【讨论】:

      • 谢谢,这对我有用!升级到 Big Sur 后我遇到了这个问题。
      【解决方案7】:

      MacOS Big Sur,Java 8 我也有同样的问题。点击图标不起作用。来自终端的此命令启动应用程序。 sh /Applications/SQLDeveloper.app/Contents/MacOS/sqldeveloper.sh 这在 MacOS Big Sur 11.2 中停止工作

      【讨论】:

      • 谢谢!这对我有用(MacOS Big Sur 11.1)
      【解决方案8】:

      我在 Catalina 10.15.6 和 SQLDeveloper 20.2.0 上遇到了同样的问题,但这里提到的解决方案都没有解决这个问题。首先,我必须右键单击 SQLDeveloper.app 文件并选择“打开”,而不是仅仅双击以避免它不是 Apple 批准的应用程序的问题。

      我尝试安装各种版本的 JDK,但在我尝试 JDK 11.0.8 (https://www.oracle.com/java/technologies/javase-jdk11-downloads.html) 之前都没有工作。查看 Robert Bain 提到的 Applications/SQLDeveloper.app/Contents/MacOS/sqldeveloper.sh 有帮助。从该脚本中可以清楚地看出,此版本的 SQLDeveloper 将仅接受 JDK 版本 1.8、11 或 12。

      安装 JDK 11 后,安装按预期进行。

      【讨论】:

        【解决方案9】:

        运行 macOS Catalina 10.12.5 和 openjdk 11 和 SQLDeveloper 19.4.0.354 的 Mac 的工作解决方案:

        编辑/Applications/SQLDeveloper.app/Contents/MacOS/sqldeveloper.sh:

        1. 删除export JAVA_HOME=$TMP_PATH之前的所有代码
        2. export JAVA_HOME=$TMP_PATH 更改为export JAVA_HOME=<path_to_jdk>/jdk-11.jdk/Contents/Home
        3. 启动 SQLDeveloper

        如果 macOS 抱怨从互联网上下载的文件,请致电 xattr -d com.apple.quarantine &lt;filename&gt;.

        顺便说一句,我看到 /Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper/bin/jdk.conf 有通过取消注释并指定 SetJavaHome 来设置 java home 的说明,但这对我不起作用。

        【讨论】:

          【解决方案10】:

          以前,只有 JDK 8 可与 Oracle SQL Developer 配合使用。

          但是,根据https://www.oracle.com/tools/downloads/sqldev-v192-downloads.html,需要 JDK 8 或 11。 (有一些误导性的文档说 JDK 8 或更高版本,但它必须是 8 或 11)。此外,根据 Oracle,JDK 11.0.7 已通过 Mac OS Catalina 认证。

          JDK 11 认证:https://www.oracle.com/java/technologies/javase/products-doc-jdk11certconfig.html

          JDK 认证:https://www.oracle.com/java/technologies/javase-subscription/documentation.html#sysconfig

          当我只安装了 JDK 14 时,它无法运行。它看起来像是要开始了,但甚至不会开始。您需要授予它运行的权限,因为它仍然不是 Apple 批准的应用程序。 (按住 Ctrl 键单击,然后打开,据说可以工作并保存您的设置,但经过这么多更改试图让它工作,我不能保证)。

          【讨论】:

            【解决方案11】:

            解压mac sqldeveloper.zip文件后,会找到SQLDeveloper.app文件。

            将 SQLDeveloper.app 复制到 Applications 文件夹。稍后在终端中执行以下命令。

            xattr -d com.apple.quarantine /Applications/SQLDeveloper.app
            

            【讨论】:

              【解决方案12】:

              您必须设置 Java 主页。请按照以下步骤操作。

              • 通过右键单击 OracledataModeler 图标和“显示包内容”找到安装目录,这将显示 Mac 上的安装目录

              • 转到(例如安装目录)/Users/user directory/Downloads/OracleDataModeler.app/Contents/Resources/datamodeler/datamodeler/bin

              • 编辑\datamodeler\datamodeler\bin directory 中的datamodeler.conf 文件并添加SetJavaHome。 (例如 SetJavaHome /usr/lib/jdk18

              • SetJavaHome /Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home

              • 从(安装目录)/Users/user directory/Downloads/OracleDataModeler.app/Contents/Resources/datamodeler/datamodeler.sh启动 SQL 数据建模器

              【讨论】:

              • 我首先尝试了 Adam Wright 的建议,但这还不够……你的小费完成了这项工作。谢谢!
              • 为我工作!谢谢!对于 Oracle SQL Developer,配置路径是 /Applications/SQLDeveloper.app/Contents/Resources/sqldeveloper/sqldeveloper/bin/sqldeveloper.conf
              【解决方案13】:

              我遇到了同样的问题,以上解决方案都不适合我。我正在运行 MacOS 10.14.5

              相反,我必须卸载通过 home brew 和 sqlDeveloper 安装的 Java12。卸载和删除两者后,我直接从oracle网站通过下载安装了Java8 JDK,然后我重新安装了sqlDeveloper。在浪费了三个小时试图让它工作之后,这组步骤终于成功了。我希望这对其他人有帮助。

              【讨论】:

                【解决方案14】:

                如果OpenJDK 适合您,并且您已经在使用/愿意使用HomebrewAdoptOpenJDK 适合我:

                brew tap AdoptOpenJDK/openjdk
                brew install adoptopenjdk8
                

                我尚未对此进行彻底测试,但至少我能够启动 SQL Developer 19.1.0.094,连接到数据库并在其上运行查询。

                如果我尝试使用他们的说明安装“最新”版本:brew cask install adoptopenjdk,它不起作用,因为这似乎在 2019 年 5 月安装了 OpenJDK 12.x。

                还有其他安装 OpenJDK 的方法,但这是一种简单的方法。

                【讨论】:

                • 在这之后我进入了JavaFX problem...只需使用Oracle JDK 1.8,就像这里的其他答案一样。
                • 这对我在莫哈韦和蒙特雷都有效。
                【解决方案15】:

                SQL Developer 运行它来检查 java 9 然后 8。我们还不支持(缺乏大量测试)java 10。你为我们去了新的。备份到 8 或 9 应该没问题。

                我们使用/usr/libexec/java_home,它允许我们指定我们想要运行的Java 版本。因此,即使您安装了 N 个 java,它也应该返回带标志传入的最高的那个。

                   #!/bin/bash 
                              ##### THIS IS CHECKING FOR JAVA 9 #####
                   TMP_PATH=`/usr/libexec/java_home -F -v 9`
                
                   if [ -z "$TMP_PATH" ] ; then
                
                              ##### THIS IS CHECKING FOR JAVA 8 #####
                     TMP_PATH=`/usr/libexec/java_home -F -v 1.8`
                
                     if [ -z "$TMP_PATH" ] ; then
                       osascript -e 'tell app "System Events" to display dialog "SQL Developer requires a     minimum of Java 8. \nJava 8 can be downloaded from:\n http://www.oracle.com/technetwork    /java/javase/downloads/"'
                       exit 1
                     fi
                   fi
                

                【讨论】:

                • 好的,我删除了 java 10,而是安装了 java 8,但是,同样的错误消息出现了,说我需要 java 8 并且无法打开
                • 如果你在终端上运行这个 sn-p 会发生什么?
                • 它出现:'无法找到任何与版本“1.8”匹配的 JVM。'并且错误消息再次出现在一个单独的框中。但是,我检查了我的 Mac 上的系统偏好设置,它肯定说安装了 Java 8
                • 您安装的是 JRE 而不是 JDK。在这里获取它oracle.com/technetwork/java/javase/downloads/…
                • 这似乎奏效了!非常感谢您的帮助,谢谢!
                【解决方案16】:

                如果您查看下载页面 (http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html),它会显示需要 JDK8。我认为它不支持 Java 9 或 10。许多程序仍然不支持。

                至于您尝试的命令是针对 Windows 的,MacOS 上没有 c:\Program Files。运行java -version 应该足够了。

                您可能想检查如何运行多个 Java 版本,请参阅Mac OS X and multiple Java versions。有点乱,但迟早你会需要的!

                【讨论】:

                  猜你喜欢
                  • 2015-12-10
                  • 2015-05-14
                  • 2015-08-14
                  • 2015-02-16
                  • 2017-10-13
                  • 1970-01-01
                  • 1970-01-01
                  • 2014-07-22
                  • 1970-01-01
                  相关资源
                  最近更新 更多