问题
I just wasted one morning trying to get SQL developer to work on my current setup:
- OS: Windows 8.1 virtual machine running on mac via Parallels.
- No oracle client or instant client installed
- No Java installed
The reproducible steps are
- I downloaded SQL Developer for Windows with JDK (all 64-bit) and unzipped it to C:/Program Files/.
- I double clicked on C:/Program Files/sqldeveloper/sqldeveloper.exe
I get the following message:
Unable to launch the Java Virtual Machine
Located at path:
C:/Program Files/sqldeveloper/jdk/jre/bin/server/jvm.dll
Can someone please help me? I also tried first installing Java 1.8 (64 bit) and then the SQL developer version without Java. This doesn't work either. When I select the location of the JDK home, it also sent one error message saying that it couldn't find any JVMs where I said. To add insult to injury, every time I follow this procedure, the Panda antivirus tells me that sqldeveloper is infected, deletes the file and encourages me to restart.
Can someone please help me? I would mostly appreciate.
Thank you very much in advance
回答1:
I had the same problem and solved it by copying the MSVCR100.dll
file from sqldeveloper\jdk\jre\bin
to the sqldeveloper\sqldeveloper\bin
folder.
Credit goes to Erik Anderson from SQL Developer failed to start
回答2:
Create directory bin
in
D:\sqldeveloper\jdk\
Copy
msvcr100.dll
from
D:\sqldeveloper\jdk\jre\bin
to
D:\sqldeveloper\jdk\bin
回答3:
If folder sqldeveloper/jdk
doesn't contain folder bin
,
you can copy folder bin
from folder sqldeveloper/jdk/jre
into sqldeveloper/jdk
.
回答4:
Depending on the issue, whether it's JAVA home path not correctly set or missing msvcr100.dll file, follow the below methods to rectify the problem:
1. Issue with JAVA home path not correctly set:
Follow these steps:
- Go to directory where SQL Developer is installed.
- Open the
/bin
directory. - Open
sqldeveloper.conf
in any editor to edit. - Remove the complete line starting with "
SetJavaHome
" - Save and close the file
- Start SQL Developer again.
- Provide the full path for
java.exe
on prompt.
2. Issue with missing msvcr100.dll file:
OP stated the following in his comments below:
If I first install the jdk and then sql developer without Java, it tells me Unable to launch the Java Virtual Machine Located at path: C:/Program Files/Java/jdk1.8.0_45/bin/msvcr100.dll
So, the error message is clear:
Unable to launch the Java Virtual Machine Located at path:
C:/Program Files/Java/jdk1.8.0_45/bin/msvcr100.dll
Follow these steps:
copy:
MSVCR100.dll
from:
sqldeveloper\jdk\jre\bin
to:
sqldeveloper\sqldeveloper\bin
And relaunch SQL Developer again.
What is msvcr100.dll file?:
msvcr100.dll
is a part of Microsoft Visual C++ and is required to run programs developed with Visual C++. Some applications like SQL Developer in the question, needs the file in the SQL Developer installation folder.
What options are available to fix the issue?:
Copying it from Windows systemfolder to the installation folder of application should fix the problem. Also, you could add the PATH to the msvcr100.dll file based on 32/64 bit requirements. If the local file itself is deleted or corrupt by any chance, then it could be downloaded online or could also be reinstalled via Microsoft visual C++ 2010 Redistributable package. It is important to use the correct version based on the software. Use the 32bit dll file for 32bit software, and 64bit dll file for 64bit software.
回答5:
I run into the same error message when trying to install SQL Developer from "Windows 64-bit with JDK 8 included" zip file in my Windows 10 Enterprise.
Launching the most recent SQL Developer version 4.1.3 in Windows 10 shows an error:
Unable to launch the Java Virtual Machine Located at path:
C:\Users\<USER>\Downloads\sqldeveloper-4.1.3.20.78-x64\sqldeveloper\jdk\jre\bin\server\jvm.dll
The path exists and is valid.
The same zip file works on Windows 7 Professional.
The problem was a missing msvcr100.dll
.
I simply copied C:\Program Files\Oracle\VirtualBox\msvrc100.dll
to C:\Users\<USER>\Downloads\sqldeveloper-4.1.3.20.78-x64\sqldeveloper\sqldeveloper\bin\
and SQL Developer started to work.
The details can be found from Issue running SQL Developer x64 4.1.3 with JDK.
Funny that Oracle VirtualBox team can include the dll into the installation package but Oracle SQL Developer team can't.
回答6:
This is because sqldeveloper.conf has an entry for the java home being used
look at this solution
回答7:
I have followed the steps and it worked just fine.
1) Open the file present at : \sqldeveloper-3.2.20.09.87\sqldeveloper\sqldeveloper\bin\sqldeveloper.conf and delete the line with setJavaHome xxx .
2) Click on Sqldeveloper.exe now and browse for the java.exe present in \sqldeveloper-3.2.20.09.87\sqldeveloper\jdk\jre\bin
3) This should launch SqlDeveloper now.
Thanks.
回答8:
Today I try to use oracle client 64 and failed connect Connection Identifier which is defined at tnsnames.ora file. I assume that try to connect Oracle 32 Bit Server using SQL Developer 64 bit. That is why I install new jdk x86 and trying to change jdk path but this error happened:
Trying to download SQL Developer 32 Bit, but at the site said that the bundle support both 32 bit and 64 bit depend on java installed.
Windows 32-bit/64-bit: This archive. will work on a 32 or 64 bit Windows OS. The bit level of the JDK you install will determine if it runs as a 32 or 64 bit application. This download does not include the required Oracle Java JDK. You will need to install it if it's not already on your machine.
My java home is 64 bit. New installed 32 bit jdk is not set at java home.
I need to open $User_dir\AppData\Roaming\sqldeveloper\version\product.conf
Remove line SetJavaHome C:\Program Files\Java\jdk1.8.0_201
Start sqldeveloper.exe
instead of sqldeveloper64W.exe
New popup will shown and choose java home to new jdk version (32 bit mine) :
C:\Program Files (x86)\Java\jdk1.8.0_201
My fault, I pin sqldeveloper64W.exe
to taskbar, why that error occured then after I move cursor and it was sqldeveloper64W.exe
, I try to click sqldeveloper.exe
, then I found that my setting is goes well.
So check it maybe it was happened on your system too. If sqldeveloper.exe
does not working, try to choose sqldeveloper64W.exe
.
Now I can call my Connection Identifier which is defined at tnsnames.ora using new setting SQL developer 32 bit mode.
回答9:
This looks like you might not have enough memory allocated to your Windows VM. If the JVM is configured to use more (maximum) memory than is available then you'll get this sort of error message.
You can read more about SQL Developer's memory at (that) Jeff Smith's blog.
The default settings still seem to be -Xms128m -Xmx800m
. I can generate a similar error by setting -Xmx to be large than the physical RAM in my (physical) PC. So with the default settings, you will have problems if you don't have 800m of memory allocated to Windows. That doesn't seem like much, but it seems to be in the recommended window based on this knowledgebase article.
While you could attempt to reduce the JVM requirements in your product.conf
file that will likely lead to other issues later, if it works at all. So increase your Windows VM memory allocation, reboot, and try to launch SQL Developer again.
回答10:
Create directory "bin" in
D:\sqldeveloper\jdk\ Copy
msvcr100.dll from
D:\sqldeveloper\jdk\jre\bin to
D:\sqldeveloper\jdk\bin
回答11:
I know that people may frown on a youtube example but this worked for me and I was getting the same issue https://www.youtube.com/watch?v=ex1dyu0Px8U
It will direct you to add the correct Environmental Variables for the JDK.
System Properties>Advanced>Environment Variables>Path> \sqldeveloper\jdk\bin AND \sqldeveloper\jdk\bin\server
回答12:
I had the same problem: The point here is to point on the java.exe binary under Oracle client installation and not the JDK installation under Program Files.
回答13:
Installing jdk1.8.0_211 and setting the below variable in product.conf (located in C:\Users\\AppData\Roaming\sqldeveloper\19.1.0) to JDK8 home worked for me
SetJavaHome D:\jdk1.8.0_211
来源:https://stackoverflow.com/questions/31181438/sql-developer-with-jdk-64-bit-cannot-find-jvm