使用JDK(64位)的SQL Developer找不到JVM

edd*_*edd 24 java oracle-sqldeveloper windows-8.1

一天早上,我只是想让SQL开发人员处理当前的设置而浪费时间:

  • 操作系统:通过Parallels在Mac上运行的Windows 8.1虚拟机.
  • 没有安装oracle客户端或即时客户端
  • 没有安装Java

可重复的步骤是

  • 我使用JDK(所有64位)下载了SQL Developer for Windows,并将其解压缩到C:/ Program Files /.
  • 我双击C:/ Program Files/sqldeveloper/sqldeveloper.exe

我收到以下消息:

无法启动Java虚拟机

位于路径:

C:/ Program Files/sqldeveloper/jdk/jre/bin/server/jvm.dll

有人可以帮帮我吗?我还尝试首先安装Java 1.8(64位),然后安装没有Java的SQL开发人员版本.这也不起作用.当我选择JDK home的位置时,它还发送了一条错误消息,说它找不到我说的任何JVM.为了增加侮辱伤害,每次我按照这个程序,熊猫防病毒告诉我sqldeveloper被感染,删除文件并鼓励我重新启动.

有人可以帮帮我吗?我非常感谢.

非常感谢你提前

小智 93

我遇到了同样的问题,并通过将MSVCR100.dll文件复制到文件夹sqldeveloper\jdk\jre\bin来解决它sqldeveloper\sqldeveloper\bin.

来自SQL Developer的 Erik Anderson 未能入手

  • 该死的.这对我也有用!你怎么想到这一点超出了我的想法. (3认同)
  • 以防万一它吸引了一些人,我下载了SQL 3.0,文件名为`MSVCR71.dll`,但是复制和粘贴仍然有效 (2认同)

and*_*rew 28

创建目录bin

D:\sqldeveloper\jdk\
Run Code Online (Sandbox Code Playgroud)

复制

msvcr100.dll
Run Code Online (Sandbox Code Playgroud)

D:\sqldeveloper\jdk\jre\bin
Run Code Online (Sandbox Code Playgroud)

D:\sqldeveloper\jdk\bin
Run Code Online (Sandbox Code Playgroud)


小智 16

我在打开 sql 开发人员时遇到了类似的问题,它给了我以下错误

由于缺少文件MSVCR100.DLL,无法启动 Java 虚拟机

我使用的是 JDK 8 和 Windows 64 位版本。我还下载了没有 jdk/jre 选项的 oracle sql 开发人员软件,因为我的系统中已经安装了 jdk 8。双击sqldeveloper.exe文件时,它要求我输入JDK的路径。我给出了路径,然后它给了我 JVM MSVCR100.DLL 错误。

我检查了 C:\Program Files\Java\jdk1.8.0_271\jre\bin 并在那里找不到 MSVCR100.DLL 文件。

然后在微软论坛上搜索后,了解到这个 dll 是64Bit: Microsoft Visual C++ 2010 SP1 Redistributable Package (x64) 的一部分

安装上述微软软件包后,我可以在 C:\Windows\System32 下找到 dll

然后做了下面的,

  • 复制 C:\Windows\System32\msvcr100.dll --> C:\Program Files\Java\jdk1.8.0_271\jre\bin

这解决了错误,当它找到正确的 dll 时,我能够打开 Oracle SQL 开发人员。


小智 9

如果文件夹sqldeveloper/jdk不包含文件夹bin,则可以将文件夹中bin的文件夹复制sqldeveloper/jdk/jresqldeveloper/jdk.

  • 这应该是一条评论 (2认同)

Lal*_*r B 8

根据问题,无论是JAVA home路径设置不正确还是msvcr100.dll文件丢失,请按照以下方法解决问题:

1. JAVA 主路径设置不正确的问题:

按着这些次序:

  • 转到安装SQL Developer 的目录。
  • 打开/bin目录。
  • sqldeveloper.conf在任何编辑器中打开以进行编辑。
  • 删除以“ SetJavaHome”开头的完整行
  • 如果您看到: SetJavaHome ../../jdk,这可能是错误的配置文件。
    • 相反,尝试类似的东西: C:\Users\${username}\AppData\Roaming\sqldeveloper\4.2.0\product.conf
    • 或者: C:\Users\${username}\Application Data\sqldeveloper\4.2.0\product.conf
  • 保存并关闭文件
  • 再次启动SQL Developer
  • 提供 JAVA_HOME 路径,例如, C:\Program Files (x86)\Java\jdk1.8.0_92
    • 重要提示:不要包含后缀 \bin\java.exe
    • 重要提示:如果运行 32 位 SQL Developer,请确保使用 32 位 JVM。(64 位相同。)

2. 缺少 msvcr100.dll 文件的问题:

OP 在下面的评论中说明了以下内容:

如果我先安装 jdk,然后没有 Java 的 sql developer,它会告诉我无法启动位于路径的 Java 虚拟机:C:/Program Files/Java/jdk1.8.0_45/bin/msvcr100.dll

所以,错误信息很明确:

Unable to launch the Java Virtual Machine Located at path: 
C:/Program Files/Java/jdk1.8.0_45/bin/msvcr100.dll
Run Code Online (Sandbox Code Playgroud)

按着这些次序:

复制:

MSVCR100.dll
Run Code Online (Sandbox Code Playgroud)

从:

sqldeveloper\jdk\jre\bin
Run Code Online (Sandbox Code Playgroud)

到:

sqldeveloper\sqldeveloper\bin
Run Code Online (Sandbox Code Playgroud)

并再次重新启动 SQL Developer。

msvcr100.dll 文件是什么?

msvcr100.dll是 Microsoft Visual C++ 的一部分,需要运行使用Visual C++开发的程序。问题中的某些应用程序(如SQL Developer)需要 SQL Developer 安装文件夹中的文件。

有哪些选项可以解决问题?

将其从 Windows 系统文件夹复制到应用程序的安装文件夹应该可以解决问题。此外,您可以根据 32/64 位要求将 PATH 添加到 msvcr100.dll 文件。如果本地文件本身被删除或损坏,则可以在线下载或通过 Microsoft Visual C++ 2010 Redistributable 包重新安装。根据软件使用正确的版本很重要。32位软件使用32位dll文件,64位软件使用64位dll文件。


toh*_*oha 5

今天我尝试使用 oracle 客户端 64,但在tnsnames.ora 文件中定义的连接标识符连接失败。我假设尝试使用 SQL Developer 64 位连接 Oracle 32 位服务器。这就是为什么我安装新的 jdk x86 并尝试更改 jdk 路径但发生了此错误:

msvcr100.dll 错误

尝试下载 SQL Developer 32 位,但网站上该捆绑包支持 32 位和 64 位,具体取决于安装的 java。

Windows 32 位/64 位:此存档。将在 32 或 64 位 Windows 操作系统上运行。您安装的 JDK 的位级别将决定它是作为 32 位还是 64 位应用程序运行。此下载不包括所需的 Oracle Java JDK。如果您的计算机上尚未安装它,则需要安装它。

我的java home是64位的。新安装的32位jdk未在java home中设置。

我需要打开$User_dir\AppData\Roaming\sqldeveloper\version\product.conf

删除线SetJavaHome C:\Program Files\Java\jdk1.8.0_201

开始sqldeveloper.exe而不是sqldeveloper64W.exe

将显示新的弹出窗口并选择新的 jdk 版本的 java home(32 位我的):

C:\Program Files (x86)\Java\jdk1.8.0_201
Run Code Online (Sandbox Code Playgroud)

我的错,我固定sqldeveloper64W.exe到任务栏,为什么在我移动光标后发生该错误,它是sqldeveloper64W.exe,我尝试单击sqldeveloper.exe,然后我发现我的设置进展顺利。

因此请检查一下,也许您的系统上也发生了这种情况。如果sqldeveloper.exe不起作用,请尝试选择sqldeveloper64W.exe

现在我可以使用新设置 SQL Developer 32 位模式调用在 tnsnames.ora 中定义的连接标识符。


Max*_*x77 2

这是因为 sqldeveloper.conf 有一个正在使用的 java home 条目

看看这个解决方案