When I try opening Eclipse, a pop-up dialog states:
Failed to load the JNI shared library "C:/JDK/bin/client/jvm.dll"`.
Following this, Eclipse force closes.
Here's a few points I'd like to make:
I checked to see if anything exists at that path. It does exist.
My Eclipse and Java SE Development Kit are both 64-bit. I checked my system, and it can handle 64-bit.
I've searched for this problem on Google and on Stack Overflow, and the only answer I found was to download the 32-bit versions of JDK and Eclipse.
Downloading the 32-bit versions is something I only want to do as a very last resort.
What would be suggested to solve this issue?
You need a 64-bit trio:
64-bit OS
64-bit Java
64-bit Eclipse
Working pairings of OS, JDK and Eclipse:
32-bit OS | 32-bit JDK | 32-bit Eclipse (32-bit only)
64-bit OS | 32-bit JDK | 32-bit Eclipse
64-bit OS | 64-bit JDK | 64bit Eclipse (64-bit only)
I had several JDKs and JREs installed.
Each of them had their own entry in the PATH variable, all was working more or less.
Judging from the PATH variables, some installations were completely useless, since they were never used. Of course, the "inactive" Javas could be referenced manually from within Eclipse if I needed, but I never did that, so I really did not need them. (At least I thought so at that time...)
I cleaned up the mess, deinstalled all current Java's, installed only JDK + JRE 1.7 64-bit.
One of the Eclipse 'installations' failed afterwards with the Failed to Load the JNI shared Library and a given path relative to the fresh installed JDK where it thought the jvm.dll to be.
The failing Eclipse was the only one of all my IDEs that was still a 32-bit version on my otherwise all-64-bit setup.
Adding VM arguments, like so often mentioned, in the eclipse.ini was no use in my case (because I had only the wrong JDK/JRE to relate to.)
I was also unable to find out how to check if this Eclipse was a 32-bit or 64-bit version (I could not look it up in the Task Manager, since this Eclipse 'installation' would not start up. And since it had been a while since I had set it up, I could not remember its version either.)
In case you use a newer JDK and a older JRE you might be in for trouble, too, but then it is more likely a java.lang.UnsupportedClassVersionError appears, IIRC.
Make sure your eclipse.ini file includes the following lines.
-vm
C:\path\to\64bit\java\bin\javaw.exe
My eclipse.ini for example:
-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.2.R36x_v20101222
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
-vm
C:\Program Files\Java\jdk1.6.0_32\bin\javaw.exe
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
Use OS and Eclipse both 64 bit or both 32 bit keep same and config eclipse.ini.
Your eclipse.ini file can be found in your eclipse folder.
I had same problem
I resolved it by installing 64 bit JVM from
http://www.java.com/en/download/manual.jsp
This error means that the architecture of Eclipse does not match the architecture of the Java runtime, i.e. if one is 32-bit the other must be the same, and not 64-bit.
The most reliable fix is to specify the JVM location in eclipse.ini:
-vm
C:\Program Files (x86)\Java\jdk1.7.0_55\bin\javaw.exe
Important: These two lines must come before -vmargs. Do not use quotes; spaces are allowed.
Another option is:
Create a shortcut to the Eclipse.exe. Open the shortcut and change the target to:
"C:\Program Files\eclipse\eclipse.exe" -vm "c:\Program Files\Java\jdk1.7.0_04\bin\javaw.exe"
For your installation, make sure the locations point to the correct Eclipse installation directory and the correct javaw.exe installation directory.
(The 64/32 bit versions of Eclipse and Java need to be the same, of course.)
I have multiple versions of Java installed, both Sun JDK & JRockit, both 32 bit and 64-bit, etc. and ran into this problem with a fresh install of 64-bit Eclipse for Java EE (JUNO).
What did NOT work:
64-bit trio as suggested by Peter Rader:
I'm using 64-bit Eclipse on 64-bit OS (Windows 7).
I ensured Sun JDK 7 64-bit was the default java version. When I typed "java -version" from command line (cmd.exe), Sun JDK 7 64-bit was returned...
java version "1.7.0"
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b17, mixed mode)
This did not resolve the problem for me.
What DID work:
Adding -vm option to eclipse.ini as suggested by Jayesh Kavathiya:
I added the following to eclipse.ini:
-vm
C:/apps/java/jdk7-64bit/bin/javaw.exe
Note:
I did not have to uninstall any of the various versions of JDK or JRE I have on my machine.
For a missing jvm.dll file, we can provide the path of the dll file in eclipse.ini file as
-vm
C:\Progra~1\Java\jdk1.6.0_38\jre\bin\server\jvm.dll
Here it is important to remove any space in the path and the double quotes.
It worked for me when i removed the quotes and space.
I hope it helps someone.
I had a similar problem. It was solved doing the following.
Move Eclipse to Program Files (not to Program Files (x86)).
Remove the path to the 32-bit version of Java from the 'path' environment variable.
I have both versions of Java installed, but Eclipse kept trying to use the 32-bit one.
Sure, you need to have a compatible version of JDK and Eclipse, but you also need to add in the eclipse.ini file the below lines:
-vm
yourdrive\java\bin
Make them the first two lines of your eclipse.ini file.
As many folks already alluded to, this is a 32 vs. 64 bit problem for both Eclipse and Java. You cannot mix up 32 and 64 bit. Since Eclipse doesn't use JAVA_HOME, you'll likely have to alter your PATH prior to launching Eclipse to ensure you are using not only the appropriate version of Java, but also if 32 or 64 bit (or modify the INI file as Jayath noted).
If you are installing Eclipse from a company-share, you should ensure you can tell which Eclipse version you are unzipping, and unzip to the appropriate Program Files directory to help keep track of which is which, then change the PATH (either permanently via (Windows) Control Panel -> System or set PATH=/path/to/32 or 64bit/java/bin;%PATH% (maybe create a batch file if you don't want to set it in your system and/or user environment variables). Remember, 32-bit is in Program files (x86).
If unsure, just launch Eclipse, if you get the error, change your PATH to the other 'bit' version of Java, and then try again. Then move the Eclipse directory to the appropriate Program Files directory.
The answers above me got me tempted so much, that I decided to dry run all the possible combinations with OS, Eclipse and JVM trio. Anyway, whoever is digging down and reading my post, check the following as a hot spot (I am Windows 7 user).
You understand Program Files and Program File (x86) are two different folders... x86 stands for the 32-bit version of programs and the former is the 64-bit version.
If you have multiple versions of Java installed with different bitness and release versions, which is bound to happen with so many open source IDEs, managers, administrative consoles, the best option is to set the VM argument directly in the eclipse.ini file. If you don't, Eclipse will go crazy and try searching itself which is not good.
Alternatively, get the same "bit" version of JRE and Eclipse and then create a new shortcut with the below target (replace the installed JRE and Eclipse location/path):
"C:\studio\eclipse.exe" -vm "C:\Program Files\Java\jre7\bin\server\jvm.dll" eclipse.vm="C:\Program Files\Java\jre7\bin\server\jvm.dll" java.home="C:\Program Files\Java\jre7" java.runtime.version=1.7.0
That should do the trick.
You can solve that problem as many other replicated. You need that Eclipse and the JDK be 32-bits or both on 64-bits. The architecture of the OS doesn't matter while the others remains on the same type of arquitecture.
One of the easy ways to resolve it is to copy the jre folder from installed the JDK into the Eclipse installation folder. Make sure that JDK you copy from is the same architecture as your Eclipse installation.
I had to configure my machine that way, because I run both Eclipse and Appcelerator Titanium Studio on my machine. The Studio needs 32-bit Java, while Eclipse needs 64-bit.
Yes, just make sure your versions of Eclipse and JDK are both 64-bit. Just to make sure everything is correct uninstalled JDK and install it in Program Files and not in Program Files (x86). At least that resolved my problem.
Just check the PATH environment variable. In My Computer - > Properties -> Advanced System settings -> Environment Variables -> (left upper window "User Variables for "some name of PC"" ) just check the PATH variable. If it doesn't exist create it with the following -- > C:\Program Files (x86)\Java\jre7\bin <--
I was faced with the same problem after had updated my Eclipse. I've found that the path asked 64-bit version, but I had the 32-bit in dif path. It was helpful for me. P.S.: I have a 64-bit OS, 32-bit JRE and 32-bit Eclipse. All works fine :)
You should uninstall all old [JREs][1] and then install the newest one... I had the same problem and now I solve it. I've:
Better install Jre 6 32 bit. It really works.
Downloaded 64 bit JVM from site and installed it manually and updated the system path variable. That solved the issue.
Default JVM is installed in my system was in "C:\Program Files
(x86)\Java\jre7"
Manually installed JVM got installed in
"C:\Program Files\Java\jre7" and after updating this pate to system
path variable it worked.
Thank you misterfrb, I realised that Eclipse was giving this error, because I had just installed Oracle 10g Developer suite, and it was looking for the jvm.dll file in the C:\DevSuiteHome_1 folder (I must have opted to install JDK again along with developer suite).
After removing the DevSuiteHome lines from the paths variable and adding the correction location for 64-bit jvm.dll (not sure if this was necessary, didn't try without), Eclipse worked again, and Developer suite still does too.
Simple, I have a 64-bit OS, 32-bit Eclipse and both JDK 32 & 64 installed... I just uninstalled the 64-bit JDK and Eclipse is working fine..
I had the same issue after upgrading from Java 6 to Java 7. After I removed Java 6 (64 bit) and reinstalled Java 7 (64 bit), Eclipse worked. :)
It is crucial to add the -vm parameter and its value on 2 lines AT THE BEGINNING of the eclipse.ini
-vm
C:\Program Files\Java\jdk1.7.0_45\bin\javaw.exe
You have change proper version of the JAVA_HOME and PATH in environmental variables.
I want to previde another solution for this error, especially for who want to use 32-bit and 64-bit Eclipse in one system.
Eclipse will startup using the JRE/JDK in jre sub-directory if it exists. (STS or other eclipse based IDE also support this feature...)
The solution is create directory junction using mklink.exe command which exist in windows vista or newer version (junction.exe offer similar function for Windows 2000/XP)
Open the command line windows and exeute following command:
mklink /j "$ECLIPSE-HOME/jre" "$JDK_or_JRE_home"
Of course, if the Eclipse is for 64-bit Windows, the architecture of JDK/JRE must be the same.
Assume:
Eclipse for windows x86_64 is installed in d:\devTool\eclipse
JDK for windows x64 is installed in C:\Program Files\Java\jdk1.8.0
The command for creating the jre folder will be:
mklink /j "d:\devTool\eclipse\jre" "C:\Program Files\Java\jdk1.8.0"
BTW, delete directory junction will NOT delete any file. If you create a wrong link, you can delete it using file explorer or rmdir command.
rmdir "d:\devTool\eclipse\jre"
Make sure you are starting Eclipse with Administrator rights.
If you use whole 64-bit trio and it still doesn't work (I've come to this problem while launching Android Monitor in Intellij Idea), probably wrong jvm.dll is being used opposed to what your java expects. Just follow these steps:
Find the jvm.dll in your JRE directory:
C:\Program Files\Java\jre7\server\bin\jvm.dll
Find the jvm.dll in your JDK directory:
c:\Program Files\Java\jdk1.7.0_xx\jre\bin\server\
Copy the jvm.dll from JRE drectory into your JDK directory and overwrite the jvm.dll in JDK.
Don't forget to make a backup, just in case. No need to install or uninstall anything related to Java.
The same occurred to me. I had 64-bit Eclipse, but my JDK was 32-bit. So I installed the 64-bit version and it's OK right now.
I'm not sure why but I had the jre installed into my c:\windows directory and java.exe and javaw.exe inside my windows\system32 directory.
Obviously these directories were getting priority even AFTER adding the -vm flag to my eclipse.ini file.
Delete them from here fixed the issue for me.
On the download page of Eclipse, it should be written "JRE 32 bits" or "JRE 64 bits" and not "Windows 32 bits" or "Windows 64 bits".
Be sure to use the correct version compatible with your JDE, as answered previously.
Related
I just append
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
in eclipse.ini then I try to start eclipse again and got this error. Give me how to solve or link that actually solve it.
this is my eclipse.ini
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-vmargs
-Xms40m
-Xmx384m
Thank you
I had the same error when configuring eclipse.ini to use JRE6. Turns out I caused this error by incorrectly configuring eclipse to use the 64 bit JVM while running a 32 bit version of eclipse 3.7.
The correct configuration required the eclipse.ini -vm argumument to use "C:/Program Files (x86)/" instead of "C:/Program Files/".
Make sure that the JVM version (32/64 bit) you use matches the eclipse version (32/64 bit).
It may just be the way the error shows (and not how it is written in the eclipse.ini file), but there is text in Eclipse.ini (Specifying the JVM) that says the following:
The -vm option and its value (the path) must be on separate lines.
The value must be the full absolute path to the Java executable, not just to the Java home directory.
The -vm option must occur before the -vmargs option, since everything after -vmargs is passed directly to the JVM
Look at the second line of the message box. There you can see which java runtime in fact is started. Mine was suddenly C:\ProgramData\Oracle\Java\javapath\javaw.exe. This happened after I have installed a "chrome java updater" (Chrome browser moaned: 'your java is outdated, you have to update...').
Before this "chrome java update" my eclipse (luna jee x64) started without error. Looking closer to the background I detected following: the chrome java updater (notabene started from an Oracle site) added C:\ProgramData\Oracle\Java\javapath in front of the env var PATH. It contains three symbolic links to the newest java 8 JRE installation in (x86) program folder -> hence to a 32 bit java JRE. Oracle replaces with Java8 the old technique having the symlinks in system32 (64bit) resp. SysWOW64 (32bit).
Meanwhile I learned. Whatever java installer you have executed last (the *.exe) leads windows to remember that java flavour (32b or 64b), with the result that after an update the links in C:\ProgramData\Oracle\Java\javapath point to a java installation of the remembered flavour. If you have a 64b eclipse installation and encounter the described error: just re-install the newest 64b JDK. After that the java updates do no more link to a 32b version. And eclipse 64b will start correctly without the entry in eclipse.ini .
You need to check if your PC has a 64-bit or 32-bit operating system, then same goes for your JDK (64-bit/32-bit) and also for Eclipse (64-bit/32-bit).
Make sure they are all the same; if not, you need to download the one that matches your bitness.
For Eclipse:
Added this two lines in eclipse.ini
Second line represents the JDK location of the javaw.exe file.
-vm
C:\Program Files\Java\jdk1.7.0_60\bin\javaw.exe
Note: place -vm lines before -vmargs, otherwise default location is taken.
For STS
Change the same as above in STS.ini
I just hit this too. Turns out that at least for me, this was due to trying to use a win64 version of the JRE with a win32 Eclipse. I seems that win32 Eclipse requires a win32 Java (what is called -586 in the list of Java installers from Oracle/Sun).
The reason I was using both is that I was trying to pinpoint a bug that only manifested itself in 64-bit Eclipse, so I needed a 32-bit to compare to.
Once I installed BOTH the "x64" (win64) and "i586" (win32) versions of the JRE on my machine, things work fine and no error 13. You can apparently have both installed at the same time.
The error means it's the wrong JVM version for that version of Eclipse. The link has more details:
http://www.ehow.com/how_4784069_terminated-exit-code-error-eclipse.html
Make sure the Eclipse and the Java that you are using are both either 32-bit or 64-bit.
You cannot run 64-bit eclipse with 32-bit JRE.
java -version
Java HotSpot(TM) 64-Bit Server VM
The 32 bit version JRE will not have 64-Bit in it.
I just had the same issue, and spend about an hour trying to solve the problem.
In the end it was a '#' character in the path.
So I renamed "C:\# IDE\eclipse 3.7\" to "C:\+ IDE\eclipse 3.7\" and that solved the problem.
Recently I faced same issue.My version of eclipse didnt support java version 8.
I had accidently installed jre 8 on my machine which automatically updated my PATH variable by appending "C:\ProgramData\Oracle\Java\javapath" in the beginging which led eclipse to pick up this version(and ignore the manually added 1.6 version which came later in order)and crash with exit code 13.
I just removed this string from the path so which led system to pick up my older version and eclipse started just fine.
I had the same issue with eclipse in my both machine. I had jre 32 bit installed. So I removed 32 bit and installed 64 bit instead and it worked perfectly.
simply install 64 bit version of JAVA from http://java.com/en/download/manual.jsp
and uninstall older version if prompted by the 64 bit installer
Go to the folder where you saved Eclipse. Look in the configuration folder at the startup log. It will give you a much better diagnostic than "exit code 13".
After java update, eclipse will not start because default jdk location has changed. Adding the following lines to eclipse.ini file solved my problem immediately:
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
I added these lines just before vmargs. It looks like as the following :
...
--launcher.defaultAction
openFile
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx512m
For more information on eclipse.ini, visit this the site http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Windows_Example
In my case, i use 32 bit eclipse and java. If you installed both 32 bit and 64 bit versions of java, be careful to choose the right version. For 64 bit versions, refer to the javaw.exe file under the directory
C:\Program Files\Java\jdk1.8.0_60\bin
Whenever you see this error, go to Configuration directory and check for a log file generated just now. It should have proper Exception stacktrace. Mine was a case where I got an updated 32-bit JRE (or JVM) installed which was the default Java that got added to the Path. And my Eclipse installation was 64-bit which meant it needed a 64-bit VM to run its native SWT libraries. So I simply uninstalled the 32-bit JVM and replaced it with a 64-bit JVM.
I wonder if they will improve this reporting mechanism, instead of silently generating a log file in some directory.
This error occurred to me on ubuntu, having installed 32bit and 64bit java. Use
sudo update-alternatives --config java
to set the right version to use as default.
Just uninstalled jre-32 bit version and It worked fine for me.
I was using Eclipse Juno and I didn't remember if it was 32 or 64 bits. I installed Java 32 bits and that's why it failed. I then installed Java 64 bits and Eclipse Juno is working again.
I also removed any java or jre reference in my environment variables (PATH).
In my opinion the most answers here regarding different architectures of Eclipse and Java are simply wrong and this can be easily checked using e.g. Process Monitor under Windows. The -vm option is there to run a specific version of java and the point of it is, that the configured process is started and runs all the Java code on its own, that's why you configure up to java.exe. In that case you DON'T need to have the same architecture for Eclipse and Java, but can happily mix both 32 Bit and 64 Bit. You only CAN'T mix both, if you DON'T use -vm, but let Eclipse load Java natively into its own process using jvm.dll and such. That latter behavior is Eclipse's default, but not the case anymore if you properly configure -vm in eclipse.ini.
If you don't believe me, do some tests on your own using different architectures of Eclipse and Java and do configure -vm or not properly. In the end, that's exactly what the questioner described in his comment to the accepted answer:
Cannot run Eclipse; JVM terminated. Exit code=13
He is telling that a 64 Bit JDK is working now, but in his screenshot one can see that his Eclipse is 32 Bit, because the path for launcher.library is 32 Bit.
And now for the reason I came here: Ony of my customers had some problems loading one of our Eclipse/OSGI based applications as well and Java exited with exit code 13. In the end it showed that the problem was not about -vm or the architectures of Java and eclipse.exe, but instead he was simply missing config.ini and I guess eclipse.exe wasn't aware what to load or such. After we recognized that and put a config.iniback in place, the app loaded fine with using -vm and a 64 Bit JRE7 in combination with a 32 Bit eclipse.exe.
I had the same issue on Ubuntu, and solved it by unpack all *.pack files in jdk directory.
for example:
cd /usr/java/jdk1.7.0_03/jre/lib
sudo ../bin/unpack200 rt.pack rt.jar
use the configuration below;
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
-product
org.springsource.ggts.ide
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jdk1.7.0_51\jre\bin\javaw.exe
-vmargs
-Dorg.eclipse.swt.browser.IEVersion=10001
-Dgrails.console.enable.interactive=false
-Dgrails.console.enable.terminal=false
-Djline.terminal=jline.UnsupportedTerminal
-Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-XX:MaxPermSize=256m
-Dorg.eclipse.swt.browser.IEVersion=10001
I fixed it reinstalling the jdk. In my case it was necessary to do:
java -version
sudo apt-get purge openjdk*
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
java -version
javac -version
taken from Install Java JDK+JRE (oracle) in Kubuntu 13.04 from apt
In my case JAVA path was not set in Env variables. Started to work after correct path was set in Env PATH.
Type javac in command prompt and make sure JAVA PATH is correct.
I did couple of things inorder to get rid of this annoying error as modifying .ini never worked for me.
Installed latest JDK
Delete old eclipse IDE folder completely.
This time i Unziped to different location
Double Click "eclipse.exe" Works now like charm
Use default workspace to load your old projects.
Am suspecting it to be JDK's Java VM issue more than eclipse.
I used the new Eclipse Installer. I didn't like the installation path and I changed it manually. After that, I got the exit code=13 message too.
There is a new property in the eclipse.ini file named -install. I just had to modify it with the new location, and that solved this issue.
In the new installer I selected D:/eclipse, but the IDE was installed at D:/eclipse/eclipse. So, I moved the folder manually. The next time I tried to open eclipse I got the exit error. Thus, I had to modify eclipse.ini and set the current location:
-install
D:/eclipse
Before going to the solution, let us know why it is showing that error. If you know the problem behind this issue we can easily fix that error.
Reason 1: The most common reason behind this problem is, we are trying to install different bit version-that is, 64 bit or 32 bit version of the software. It maybe either Eclipse or Java.
Solution:
Check which version of operating system you are running.make sure you downloaded the same version of Eclipse as well as same version of Java software.
Reason 2: Configuration mistake in Eclipse.ini file
Solution:
Add this line "-vm then path of your java sdk" at the end of Eclipse.ini file. for example:
-vm
C:\Program Files\Java\jdk1.7.0_71\bin\javaw.exe
Reason 3: Special characters ( #, !, #) in Eclipse installation directory.
Solution:
Make sure you don’t have any special characters.
Reason 4: You have added JAVA path two times in PATH system variable and both the path are different.
Solution:
Remove one incorrect/different JAVA path from PATH system variable.
Reason 5: You maybe using latest version of Eclipse, but you might be using wrong version or unsupported version of Java Virtual Machine (JVM).
Solution:
To check which version of java you are using open command prompt by pressing win+R key and type cmd and press enter. Now in that console type Java -version command to know java version.
Now research whether eclipse support that version or not.
Or
You can open “readme” folder in Eclipse folder and open readme_eclipse.html to see which version it supports.
for ones with Eclipse Neon
I wanted to run Eclipse Neon and had JRE 1.8 but JDK 1.7
It returned error=13
then I installed java JDK 1.8 and everything worked like a charm
I had this issue also. I had an old JDK1.8.0_05. I installed the newest JDK1.8.0_111 and everything works great now. Just be sure to update your environment variable.
I am on Windows 7 64 bit.
Using Eclipse Neon 1a.
Hope that helps someone.
I face same issue with sts 3.8.4, so I tried different settings but not luck,
I reinstall jdk again n tried but same problem.
Finally I downloaded sts 3.8.2 n it runs with out any issue.
Using windows 8, 64 bit os.
thanks
This can happen when the PATH environment variable is point to a wrong java instalation.
I just append
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
in eclipse.ini then I try to start eclipse again and got this error. Give me how to solve or link that actually solve it.
this is my eclipse.ini
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-vmargs
-Xms40m
-Xmx384m
Thank you
I had the same error when configuring eclipse.ini to use JRE6. Turns out I caused this error by incorrectly configuring eclipse to use the 64 bit JVM while running a 32 bit version of eclipse 3.7.
The correct configuration required the eclipse.ini -vm argumument to use "C:/Program Files (x86)/" instead of "C:/Program Files/".
Make sure that the JVM version (32/64 bit) you use matches the eclipse version (32/64 bit).
It may just be the way the error shows (and not how it is written in the eclipse.ini file), but there is text in Eclipse.ini (Specifying the JVM) that says the following:
The -vm option and its value (the path) must be on separate lines.
The value must be the full absolute path to the Java executable, not just to the Java home directory.
The -vm option must occur before the -vmargs option, since everything after -vmargs is passed directly to the JVM
Look at the second line of the message box. There you can see which java runtime in fact is started. Mine was suddenly C:\ProgramData\Oracle\Java\javapath\javaw.exe. This happened after I have installed a "chrome java updater" (Chrome browser moaned: 'your java is outdated, you have to update...').
Before this "chrome java update" my eclipse (luna jee x64) started without error. Looking closer to the background I detected following: the chrome java updater (notabene started from an Oracle site) added C:\ProgramData\Oracle\Java\javapath in front of the env var PATH. It contains three symbolic links to the newest java 8 JRE installation in (x86) program folder -> hence to a 32 bit java JRE. Oracle replaces with Java8 the old technique having the symlinks in system32 (64bit) resp. SysWOW64 (32bit).
Meanwhile I learned. Whatever java installer you have executed last (the *.exe) leads windows to remember that java flavour (32b or 64b), with the result that after an update the links in C:\ProgramData\Oracle\Java\javapath point to a java installation of the remembered flavour. If you have a 64b eclipse installation and encounter the described error: just re-install the newest 64b JDK. After that the java updates do no more link to a 32b version. And eclipse 64b will start correctly without the entry in eclipse.ini .
You need to check if your PC has a 64-bit or 32-bit operating system, then same goes for your JDK (64-bit/32-bit) and also for Eclipse (64-bit/32-bit).
Make sure they are all the same; if not, you need to download the one that matches your bitness.
For Eclipse:
Added this two lines in eclipse.ini
Second line represents the JDK location of the javaw.exe file.
-vm
C:\Program Files\Java\jdk1.7.0_60\bin\javaw.exe
Note: place -vm lines before -vmargs, otherwise default location is taken.
For STS
Change the same as above in STS.ini
I just hit this too. Turns out that at least for me, this was due to trying to use a win64 version of the JRE with a win32 Eclipse. I seems that win32 Eclipse requires a win32 Java (what is called -586 in the list of Java installers from Oracle/Sun).
The reason I was using both is that I was trying to pinpoint a bug that only manifested itself in 64-bit Eclipse, so I needed a 32-bit to compare to.
Once I installed BOTH the "x64" (win64) and "i586" (win32) versions of the JRE on my machine, things work fine and no error 13. You can apparently have both installed at the same time.
The error means it's the wrong JVM version for that version of Eclipse. The link has more details:
http://www.ehow.com/how_4784069_terminated-exit-code-error-eclipse.html
Make sure the Eclipse and the Java that you are using are both either 32-bit or 64-bit.
You cannot run 64-bit eclipse with 32-bit JRE.
java -version
Java HotSpot(TM) 64-Bit Server VM
The 32 bit version JRE will not have 64-Bit in it.
I just had the same issue, and spend about an hour trying to solve the problem.
In the end it was a '#' character in the path.
So I renamed "C:\# IDE\eclipse 3.7\" to "C:\+ IDE\eclipse 3.7\" and that solved the problem.
Recently I faced same issue.My version of eclipse didnt support java version 8.
I had accidently installed jre 8 on my machine which automatically updated my PATH variable by appending "C:\ProgramData\Oracle\Java\javapath" in the beginging which led eclipse to pick up this version(and ignore the manually added 1.6 version which came later in order)and crash with exit code 13.
I just removed this string from the path so which led system to pick up my older version and eclipse started just fine.
I had the same issue with eclipse in my both machine. I had jre 32 bit installed. So I removed 32 bit and installed 64 bit instead and it worked perfectly.
simply install 64 bit version of JAVA from http://java.com/en/download/manual.jsp
and uninstall older version if prompted by the 64 bit installer
Go to the folder where you saved Eclipse. Look in the configuration folder at the startup log. It will give you a much better diagnostic than "exit code 13".
After java update, eclipse will not start because default jdk location has changed. Adding the following lines to eclipse.ini file solved my problem immediately:
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
I added these lines just before vmargs. It looks like as the following :
...
--launcher.defaultAction
openFile
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx512m
For more information on eclipse.ini, visit this the site http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Windows_Example
In my case, i use 32 bit eclipse and java. If you installed both 32 bit and 64 bit versions of java, be careful to choose the right version. For 64 bit versions, refer to the javaw.exe file under the directory
C:\Program Files\Java\jdk1.8.0_60\bin
Whenever you see this error, go to Configuration directory and check for a log file generated just now. It should have proper Exception stacktrace. Mine was a case where I got an updated 32-bit JRE (or JVM) installed which was the default Java that got added to the Path. And my Eclipse installation was 64-bit which meant it needed a 64-bit VM to run its native SWT libraries. So I simply uninstalled the 32-bit JVM and replaced it with a 64-bit JVM.
I wonder if they will improve this reporting mechanism, instead of silently generating a log file in some directory.
This error occurred to me on ubuntu, having installed 32bit and 64bit java. Use
sudo update-alternatives --config java
to set the right version to use as default.
Just uninstalled jre-32 bit version and It worked fine for me.
I was using Eclipse Juno and I didn't remember if it was 32 or 64 bits. I installed Java 32 bits and that's why it failed. I then installed Java 64 bits and Eclipse Juno is working again.
I also removed any java or jre reference in my environment variables (PATH).
In my opinion the most answers here regarding different architectures of Eclipse and Java are simply wrong and this can be easily checked using e.g. Process Monitor under Windows. The -vm option is there to run a specific version of java and the point of it is, that the configured process is started and runs all the Java code on its own, that's why you configure up to java.exe. In that case you DON'T need to have the same architecture for Eclipse and Java, but can happily mix both 32 Bit and 64 Bit. You only CAN'T mix both, if you DON'T use -vm, but let Eclipse load Java natively into its own process using jvm.dll and such. That latter behavior is Eclipse's default, but not the case anymore if you properly configure -vm in eclipse.ini.
If you don't believe me, do some tests on your own using different architectures of Eclipse and Java and do configure -vm or not properly. In the end, that's exactly what the questioner described in his comment to the accepted answer:
Cannot run Eclipse; JVM terminated. Exit code=13
He is telling that a 64 Bit JDK is working now, but in his screenshot one can see that his Eclipse is 32 Bit, because the path for launcher.library is 32 Bit.
And now for the reason I came here: Ony of my customers had some problems loading one of our Eclipse/OSGI based applications as well and Java exited with exit code 13. In the end it showed that the problem was not about -vm or the architectures of Java and eclipse.exe, but instead he was simply missing config.ini and I guess eclipse.exe wasn't aware what to load or such. After we recognized that and put a config.iniback in place, the app loaded fine with using -vm and a 64 Bit JRE7 in combination with a 32 Bit eclipse.exe.
I had the same issue on Ubuntu, and solved it by unpack all *.pack files in jdk directory.
for example:
cd /usr/java/jdk1.7.0_03/jre/lib
sudo ../bin/unpack200 rt.pack rt.jar
use the configuration below;
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
-product
org.springsource.ggts.ide
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jdk1.7.0_51\jre\bin\javaw.exe
-vmargs
-Dorg.eclipse.swt.browser.IEVersion=10001
-Dgrails.console.enable.interactive=false
-Dgrails.console.enable.terminal=false
-Djline.terminal=jline.UnsupportedTerminal
-Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-XX:MaxPermSize=256m
-Dorg.eclipse.swt.browser.IEVersion=10001
I fixed it reinstalling the jdk. In my case it was necessary to do:
java -version
sudo apt-get purge openjdk*
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
java -version
javac -version
taken from Install Java JDK+JRE (oracle) in Kubuntu 13.04 from apt
In my case JAVA path was not set in Env variables. Started to work after correct path was set in Env PATH.
Type javac in command prompt and make sure JAVA PATH is correct.
I did couple of things inorder to get rid of this annoying error as modifying .ini never worked for me.
Installed latest JDK
Delete old eclipse IDE folder completely.
This time i Unziped to different location
Double Click "eclipse.exe" Works now like charm
Use default workspace to load your old projects.
Am suspecting it to be JDK's Java VM issue more than eclipse.
I used the new Eclipse Installer. I didn't like the installation path and I changed it manually. After that, I got the exit code=13 message too.
There is a new property in the eclipse.ini file named -install. I just had to modify it with the new location, and that solved this issue.
In the new installer I selected D:/eclipse, but the IDE was installed at D:/eclipse/eclipse. So, I moved the folder manually. The next time I tried to open eclipse I got the exit error. Thus, I had to modify eclipse.ini and set the current location:
-install
D:/eclipse
Before going to the solution, let us know why it is showing that error. If you know the problem behind this issue we can easily fix that error.
Reason 1: The most common reason behind this problem is, we are trying to install different bit version-that is, 64 bit or 32 bit version of the software. It maybe either Eclipse or Java.
Solution:
Check which version of operating system you are running.make sure you downloaded the same version of Eclipse as well as same version of Java software.
Reason 2: Configuration mistake in Eclipse.ini file
Solution:
Add this line "-vm then path of your java sdk" at the end of Eclipse.ini file. for example:
-vm
C:\Program Files\Java\jdk1.7.0_71\bin\javaw.exe
Reason 3: Special characters ( #, !, #) in Eclipse installation directory.
Solution:
Make sure you don’t have any special characters.
Reason 4: You have added JAVA path two times in PATH system variable and both the path are different.
Solution:
Remove one incorrect/different JAVA path from PATH system variable.
Reason 5: You maybe using latest version of Eclipse, but you might be using wrong version or unsupported version of Java Virtual Machine (JVM).
Solution:
To check which version of java you are using open command prompt by pressing win+R key and type cmd and press enter. Now in that console type Java -version command to know java version.
Now research whether eclipse support that version or not.
Or
You can open “readme” folder in Eclipse folder and open readme_eclipse.html to see which version it supports.
for ones with Eclipse Neon
I wanted to run Eclipse Neon and had JRE 1.8 but JDK 1.7
It returned error=13
then I installed java JDK 1.8 and everything worked like a charm
I had this issue also. I had an old JDK1.8.0_05. I installed the newest JDK1.8.0_111 and everything works great now. Just be sure to update your environment variable.
I am on Windows 7 64 bit.
Using Eclipse Neon 1a.
Hope that helps someone.
I face same issue with sts 3.8.4, so I tried different settings but not luck,
I reinstall jdk again n tried but same problem.
Finally I downloaded sts 3.8.2 n it runs with out any issue.
Using windows 8, 64 bit os.
thanks
This can happen when the PATH environment variable is point to a wrong java instalation.
I just append
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
in eclipse.ini then I try to start eclipse again and got this error. Give me how to solve or link that actually solve it.
this is my eclipse.ini
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-vmargs
-Xms40m
-Xmx384m
Thank you
I had the same error when configuring eclipse.ini to use JRE6. Turns out I caused this error by incorrectly configuring eclipse to use the 64 bit JVM while running a 32 bit version of eclipse 3.7.
The correct configuration required the eclipse.ini -vm argumument to use "C:/Program Files (x86)/" instead of "C:/Program Files/".
Make sure that the JVM version (32/64 bit) you use matches the eclipse version (32/64 bit).
It may just be the way the error shows (and not how it is written in the eclipse.ini file), but there is text in Eclipse.ini (Specifying the JVM) that says the following:
The -vm option and its value (the path) must be on separate lines.
The value must be the full absolute path to the Java executable, not just to the Java home directory.
The -vm option must occur before the -vmargs option, since everything after -vmargs is passed directly to the JVM
Look at the second line of the message box. There you can see which java runtime in fact is started. Mine was suddenly C:\ProgramData\Oracle\Java\javapath\javaw.exe. This happened after I have installed a "chrome java updater" (Chrome browser moaned: 'your java is outdated, you have to update...').
Before this "chrome java update" my eclipse (luna jee x64) started without error. Looking closer to the background I detected following: the chrome java updater (notabene started from an Oracle site) added C:\ProgramData\Oracle\Java\javapath in front of the env var PATH. It contains three symbolic links to the newest java 8 JRE installation in (x86) program folder -> hence to a 32 bit java JRE. Oracle replaces with Java8 the old technique having the symlinks in system32 (64bit) resp. SysWOW64 (32bit).
Meanwhile I learned. Whatever java installer you have executed last (the *.exe) leads windows to remember that java flavour (32b or 64b), with the result that after an update the links in C:\ProgramData\Oracle\Java\javapath point to a java installation of the remembered flavour. If you have a 64b eclipse installation and encounter the described error: just re-install the newest 64b JDK. After that the java updates do no more link to a 32b version. And eclipse 64b will start correctly without the entry in eclipse.ini .
You need to check if your PC has a 64-bit or 32-bit operating system, then same goes for your JDK (64-bit/32-bit) and also for Eclipse (64-bit/32-bit).
Make sure they are all the same; if not, you need to download the one that matches your bitness.
For Eclipse:
Added this two lines in eclipse.ini
Second line represents the JDK location of the javaw.exe file.
-vm
C:\Program Files\Java\jdk1.7.0_60\bin\javaw.exe
Note: place -vm lines before -vmargs, otherwise default location is taken.
For STS
Change the same as above in STS.ini
I just hit this too. Turns out that at least for me, this was due to trying to use a win64 version of the JRE with a win32 Eclipse. I seems that win32 Eclipse requires a win32 Java (what is called -586 in the list of Java installers from Oracle/Sun).
The reason I was using both is that I was trying to pinpoint a bug that only manifested itself in 64-bit Eclipse, so I needed a 32-bit to compare to.
Once I installed BOTH the "x64" (win64) and "i586" (win32) versions of the JRE on my machine, things work fine and no error 13. You can apparently have both installed at the same time.
The error means it's the wrong JVM version for that version of Eclipse. The link has more details:
http://www.ehow.com/how_4784069_terminated-exit-code-error-eclipse.html
Make sure the Eclipse and the Java that you are using are both either 32-bit or 64-bit.
You cannot run 64-bit eclipse with 32-bit JRE.
java -version
Java HotSpot(TM) 64-Bit Server VM
The 32 bit version JRE will not have 64-Bit in it.
I just had the same issue, and spend about an hour trying to solve the problem.
In the end it was a '#' character in the path.
So I renamed "C:\# IDE\eclipse 3.7\" to "C:\+ IDE\eclipse 3.7\" and that solved the problem.
Recently I faced same issue.My version of eclipse didnt support java version 8.
I had accidently installed jre 8 on my machine which automatically updated my PATH variable by appending "C:\ProgramData\Oracle\Java\javapath" in the beginging which led eclipse to pick up this version(and ignore the manually added 1.6 version which came later in order)and crash with exit code 13.
I just removed this string from the path so which led system to pick up my older version and eclipse started just fine.
I had the same issue with eclipse in my both machine. I had jre 32 bit installed. So I removed 32 bit and installed 64 bit instead and it worked perfectly.
simply install 64 bit version of JAVA from http://java.com/en/download/manual.jsp
and uninstall older version if prompted by the 64 bit installer
Go to the folder where you saved Eclipse. Look in the configuration folder at the startup log. It will give you a much better diagnostic than "exit code 13".
After java update, eclipse will not start because default jdk location has changed. Adding the following lines to eclipse.ini file solved my problem immediately:
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
I added these lines just before vmargs. It looks like as the following :
...
--launcher.defaultAction
openFile
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx512m
For more information on eclipse.ini, visit this the site http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Windows_Example
In my case, i use 32 bit eclipse and java. If you installed both 32 bit and 64 bit versions of java, be careful to choose the right version. For 64 bit versions, refer to the javaw.exe file under the directory
C:\Program Files\Java\jdk1.8.0_60\bin
Whenever you see this error, go to Configuration directory and check for a log file generated just now. It should have proper Exception stacktrace. Mine was a case where I got an updated 32-bit JRE (or JVM) installed which was the default Java that got added to the Path. And my Eclipse installation was 64-bit which meant it needed a 64-bit VM to run its native SWT libraries. So I simply uninstalled the 32-bit JVM and replaced it with a 64-bit JVM.
I wonder if they will improve this reporting mechanism, instead of silently generating a log file in some directory.
This error occurred to me on ubuntu, having installed 32bit and 64bit java. Use
sudo update-alternatives --config java
to set the right version to use as default.
Just uninstalled jre-32 bit version and It worked fine for me.
I was using Eclipse Juno and I didn't remember if it was 32 or 64 bits. I installed Java 32 bits and that's why it failed. I then installed Java 64 bits and Eclipse Juno is working again.
I also removed any java or jre reference in my environment variables (PATH).
In my opinion the most answers here regarding different architectures of Eclipse and Java are simply wrong and this can be easily checked using e.g. Process Monitor under Windows. The -vm option is there to run a specific version of java and the point of it is, that the configured process is started and runs all the Java code on its own, that's why you configure up to java.exe. In that case you DON'T need to have the same architecture for Eclipse and Java, but can happily mix both 32 Bit and 64 Bit. You only CAN'T mix both, if you DON'T use -vm, but let Eclipse load Java natively into its own process using jvm.dll and such. That latter behavior is Eclipse's default, but not the case anymore if you properly configure -vm in eclipse.ini.
If you don't believe me, do some tests on your own using different architectures of Eclipse and Java and do configure -vm or not properly. In the end, that's exactly what the questioner described in his comment to the accepted answer:
Cannot run Eclipse; JVM terminated. Exit code=13
He is telling that a 64 Bit JDK is working now, but in his screenshot one can see that his Eclipse is 32 Bit, because the path for launcher.library is 32 Bit.
And now for the reason I came here: Ony of my customers had some problems loading one of our Eclipse/OSGI based applications as well and Java exited with exit code 13. In the end it showed that the problem was not about -vm or the architectures of Java and eclipse.exe, but instead he was simply missing config.ini and I guess eclipse.exe wasn't aware what to load or such. After we recognized that and put a config.iniback in place, the app loaded fine with using -vm and a 64 Bit JRE7 in combination with a 32 Bit eclipse.exe.
I had the same issue on Ubuntu, and solved it by unpack all *.pack files in jdk directory.
for example:
cd /usr/java/jdk1.7.0_03/jre/lib
sudo ../bin/unpack200 rt.pack rt.jar
use the configuration below;
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
-product
org.springsource.ggts.ide
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jdk1.7.0_51\jre\bin\javaw.exe
-vmargs
-Dorg.eclipse.swt.browser.IEVersion=10001
-Dgrails.console.enable.interactive=false
-Dgrails.console.enable.terminal=false
-Djline.terminal=jline.UnsupportedTerminal
-Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-XX:MaxPermSize=256m
-Dorg.eclipse.swt.browser.IEVersion=10001
I fixed it reinstalling the jdk. In my case it was necessary to do:
java -version
sudo apt-get purge openjdk*
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
java -version
javac -version
taken from Install Java JDK+JRE (oracle) in Kubuntu 13.04 from apt
In my case JAVA path was not set in Env variables. Started to work after correct path was set in Env PATH.
Type javac in command prompt and make sure JAVA PATH is correct.
I did couple of things inorder to get rid of this annoying error as modifying .ini never worked for me.
Installed latest JDK
Delete old eclipse IDE folder completely.
This time i Unziped to different location
Double Click "eclipse.exe" Works now like charm
Use default workspace to load your old projects.
Am suspecting it to be JDK's Java VM issue more than eclipse.
I used the new Eclipse Installer. I didn't like the installation path and I changed it manually. After that, I got the exit code=13 message too.
There is a new property in the eclipse.ini file named -install. I just had to modify it with the new location, and that solved this issue.
In the new installer I selected D:/eclipse, but the IDE was installed at D:/eclipse/eclipse. So, I moved the folder manually. The next time I tried to open eclipse I got the exit error. Thus, I had to modify eclipse.ini and set the current location:
-install
D:/eclipse
Before going to the solution, let us know why it is showing that error. If you know the problem behind this issue we can easily fix that error.
Reason 1: The most common reason behind this problem is, we are trying to install different bit version-that is, 64 bit or 32 bit version of the software. It maybe either Eclipse or Java.
Solution:
Check which version of operating system you are running.make sure you downloaded the same version of Eclipse as well as same version of Java software.
Reason 2: Configuration mistake in Eclipse.ini file
Solution:
Add this line "-vm then path of your java sdk" at the end of Eclipse.ini file. for example:
-vm
C:\Program Files\Java\jdk1.7.0_71\bin\javaw.exe
Reason 3: Special characters ( #, !, #) in Eclipse installation directory.
Solution:
Make sure you don’t have any special characters.
Reason 4: You have added JAVA path two times in PATH system variable and both the path are different.
Solution:
Remove one incorrect/different JAVA path from PATH system variable.
Reason 5: You maybe using latest version of Eclipse, but you might be using wrong version or unsupported version of Java Virtual Machine (JVM).
Solution:
To check which version of java you are using open command prompt by pressing win+R key and type cmd and press enter. Now in that console type Java -version command to know java version.
Now research whether eclipse support that version or not.
Or
You can open “readme” folder in Eclipse folder and open readme_eclipse.html to see which version it supports.
for ones with Eclipse Neon
I wanted to run Eclipse Neon and had JRE 1.8 but JDK 1.7
It returned error=13
then I installed java JDK 1.8 and everything worked like a charm
I had this issue also. I had an old JDK1.8.0_05. I installed the newest JDK1.8.0_111 and everything works great now. Just be sure to update your environment variable.
I am on Windows 7 64 bit.
Using Eclipse Neon 1a.
Hope that helps someone.
I face same issue with sts 3.8.4, so I tried different settings but not luck,
I reinstall jdk again n tried but same problem.
Finally I downloaded sts 3.8.2 n it runs with out any issue.
Using windows 8, 64 bit os.
thanks
This can happen when the PATH environment variable is point to a wrong java instalation.
I just append
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
in eclipse.ini then I try to start eclipse again and got this error. Give me how to solve or link that actually solve it.
this is my eclipse.ini
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize 256m
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-vmargs
-Xms40m
-Xmx384m
Thank you
I had the same error when configuring eclipse.ini to use JRE6. Turns out I caused this error by incorrectly configuring eclipse to use the 64 bit JVM while running a 32 bit version of eclipse 3.7.
The correct configuration required the eclipse.ini -vm argumument to use "C:/Program Files (x86)/" instead of "C:/Program Files/".
Make sure that the JVM version (32/64 bit) you use matches the eclipse version (32/64 bit).
It may just be the way the error shows (and not how it is written in the eclipse.ini file), but there is text in Eclipse.ini (Specifying the JVM) that says the following:
The -vm option and its value (the path) must be on separate lines.
The value must be the full absolute path to the Java executable, not just to the Java home directory.
The -vm option must occur before the -vmargs option, since everything after -vmargs is passed directly to the JVM
Look at the second line of the message box. There you can see which java runtime in fact is started. Mine was suddenly C:\ProgramData\Oracle\Java\javapath\javaw.exe. This happened after I have installed a "chrome java updater" (Chrome browser moaned: 'your java is outdated, you have to update...').
Before this "chrome java update" my eclipse (luna jee x64) started without error. Looking closer to the background I detected following: the chrome java updater (notabene started from an Oracle site) added C:\ProgramData\Oracle\Java\javapath in front of the env var PATH. It contains three symbolic links to the newest java 8 JRE installation in (x86) program folder -> hence to a 32 bit java JRE. Oracle replaces with Java8 the old technique having the symlinks in system32 (64bit) resp. SysWOW64 (32bit).
Meanwhile I learned. Whatever java installer you have executed last (the *.exe) leads windows to remember that java flavour (32b or 64b), with the result that after an update the links in C:\ProgramData\Oracle\Java\javapath point to a java installation of the remembered flavour. If you have a 64b eclipse installation and encounter the described error: just re-install the newest 64b JDK. After that the java updates do no more link to a 32b version. And eclipse 64b will start correctly without the entry in eclipse.ini .
You need to check if your PC has a 64-bit or 32-bit operating system, then same goes for your JDK (64-bit/32-bit) and also for Eclipse (64-bit/32-bit).
Make sure they are all the same; if not, you need to download the one that matches your bitness.
For Eclipse:
Added this two lines in eclipse.ini
Second line represents the JDK location of the javaw.exe file.
-vm
C:\Program Files\Java\jdk1.7.0_60\bin\javaw.exe
Note: place -vm lines before -vmargs, otherwise default location is taken.
For STS
Change the same as above in STS.ini
I just hit this too. Turns out that at least for me, this was due to trying to use a win64 version of the JRE with a win32 Eclipse. I seems that win32 Eclipse requires a win32 Java (what is called -586 in the list of Java installers from Oracle/Sun).
The reason I was using both is that I was trying to pinpoint a bug that only manifested itself in 64-bit Eclipse, so I needed a 32-bit to compare to.
Once I installed BOTH the "x64" (win64) and "i586" (win32) versions of the JRE on my machine, things work fine and no error 13. You can apparently have both installed at the same time.
The error means it's the wrong JVM version for that version of Eclipse. The link has more details:
http://www.ehow.com/how_4784069_terminated-exit-code-error-eclipse.html
Make sure the Eclipse and the Java that you are using are both either 32-bit or 64-bit.
You cannot run 64-bit eclipse with 32-bit JRE.
java -version
Java HotSpot(TM) 64-Bit Server VM
The 32 bit version JRE will not have 64-Bit in it.
I just had the same issue, and spend about an hour trying to solve the problem.
In the end it was a '#' character in the path.
So I renamed "C:\# IDE\eclipse 3.7\" to "C:\+ IDE\eclipse 3.7\" and that solved the problem.
Recently I faced same issue.My version of eclipse didnt support java version 8.
I had accidently installed jre 8 on my machine which automatically updated my PATH variable by appending "C:\ProgramData\Oracle\Java\javapath" in the beginging which led eclipse to pick up this version(and ignore the manually added 1.6 version which came later in order)and crash with exit code 13.
I just removed this string from the path so which led system to pick up my older version and eclipse started just fine.
I had the same issue with eclipse in my both machine. I had jre 32 bit installed. So I removed 32 bit and installed 64 bit instead and it worked perfectly.
simply install 64 bit version of JAVA from http://java.com/en/download/manual.jsp
and uninstall older version if prompted by the 64 bit installer
Go to the folder where you saved Eclipse. Look in the configuration folder at the startup log. It will give you a much better diagnostic than "exit code 13".
After java update, eclipse will not start because default jdk location has changed. Adding the following lines to eclipse.ini file solved my problem immediately:
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
I added these lines just before vmargs. It looks like as the following :
...
--launcher.defaultAction
openFile
-vm
C:\Program Files (x86)\Java\jdk1.7.0_75\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx512m
For more information on eclipse.ini, visit this the site http://wiki.eclipse.org/Eclipse.ini#-vm_value:_Windows_Example
In my case, i use 32 bit eclipse and java. If you installed both 32 bit and 64 bit versions of java, be careful to choose the right version. For 64 bit versions, refer to the javaw.exe file under the directory
C:\Program Files\Java\jdk1.8.0_60\bin
Whenever you see this error, go to Configuration directory and check for a log file generated just now. It should have proper Exception stacktrace. Mine was a case where I got an updated 32-bit JRE (or JVM) installed which was the default Java that got added to the Path. And my Eclipse installation was 64-bit which meant it needed a 64-bit VM to run its native SWT libraries. So I simply uninstalled the 32-bit JVM and replaced it with a 64-bit JVM.
I wonder if they will improve this reporting mechanism, instead of silently generating a log file in some directory.
This error occurred to me on ubuntu, having installed 32bit and 64bit java. Use
sudo update-alternatives --config java
to set the right version to use as default.
Just uninstalled jre-32 bit version and It worked fine for me.
I was using Eclipse Juno and I didn't remember if it was 32 or 64 bits. I installed Java 32 bits and that's why it failed. I then installed Java 64 bits and Eclipse Juno is working again.
I also removed any java or jre reference in my environment variables (PATH).
In my opinion the most answers here regarding different architectures of Eclipse and Java are simply wrong and this can be easily checked using e.g. Process Monitor under Windows. The -vm option is there to run a specific version of java and the point of it is, that the configured process is started and runs all the Java code on its own, that's why you configure up to java.exe. In that case you DON'T need to have the same architecture for Eclipse and Java, but can happily mix both 32 Bit and 64 Bit. You only CAN'T mix both, if you DON'T use -vm, but let Eclipse load Java natively into its own process using jvm.dll and such. That latter behavior is Eclipse's default, but not the case anymore if you properly configure -vm in eclipse.ini.
If you don't believe me, do some tests on your own using different architectures of Eclipse and Java and do configure -vm or not properly. In the end, that's exactly what the questioner described in his comment to the accepted answer:
Cannot run Eclipse; JVM terminated. Exit code=13
He is telling that a 64 Bit JDK is working now, but in his screenshot one can see that his Eclipse is 32 Bit, because the path for launcher.library is 32 Bit.
And now for the reason I came here: Ony of my customers had some problems loading one of our Eclipse/OSGI based applications as well and Java exited with exit code 13. In the end it showed that the problem was not about -vm or the architectures of Java and eclipse.exe, but instead he was simply missing config.ini and I guess eclipse.exe wasn't aware what to load or such. After we recognized that and put a config.iniback in place, the app loaded fine with using -vm and a 64 Bit JRE7 in combination with a 32 Bit eclipse.exe.
I had the same issue on Ubuntu, and solved it by unpack all *.pack files in jdk directory.
for example:
cd /usr/java/jdk1.7.0_03/jre/lib
sudo ../bin/unpack200 rt.pack rt.jar
use the configuration below;
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130807-1835
-product
org.springsource.ggts.ide
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jdk1.7.0_51\jre\bin\javaw.exe
-vmargs
-Dorg.eclipse.swt.browser.IEVersion=10001
-Dgrails.console.enable.interactive=false
-Dgrails.console.enable.terminal=false
-Djline.terminal=jline.UnsupportedTerminal
-Dgrails.console.class=grails.build.logging.GrailsEclipseConsole
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-XX:MaxPermSize=256m
-Dorg.eclipse.swt.browser.IEVersion=10001
I fixed it reinstalling the jdk. In my case it was necessary to do:
java -version
sudo apt-get purge openjdk*
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
java -version
javac -version
taken from Install Java JDK+JRE (oracle) in Kubuntu 13.04 from apt
In my case JAVA path was not set in Env variables. Started to work after correct path was set in Env PATH.
Type javac in command prompt and make sure JAVA PATH is correct.
I did couple of things inorder to get rid of this annoying error as modifying .ini never worked for me.
Installed latest JDK
Delete old eclipse IDE folder completely.
This time i Unziped to different location
Double Click "eclipse.exe" Works now like charm
Use default workspace to load your old projects.
Am suspecting it to be JDK's Java VM issue more than eclipse.
I used the new Eclipse Installer. I didn't like the installation path and I changed it manually. After that, I got the exit code=13 message too.
There is a new property in the eclipse.ini file named -install. I just had to modify it with the new location, and that solved this issue.
In the new installer I selected D:/eclipse, but the IDE was installed at D:/eclipse/eclipse. So, I moved the folder manually. The next time I tried to open eclipse I got the exit error. Thus, I had to modify eclipse.ini and set the current location:
-install
D:/eclipse
Before going to the solution, let us know why it is showing that error. If you know the problem behind this issue we can easily fix that error.
Reason 1: The most common reason behind this problem is, we are trying to install different bit version-that is, 64 bit or 32 bit version of the software. It maybe either Eclipse or Java.
Solution:
Check which version of operating system you are running.make sure you downloaded the same version of Eclipse as well as same version of Java software.
Reason 2: Configuration mistake in Eclipse.ini file
Solution:
Add this line "-vm then path of your java sdk" at the end of Eclipse.ini file. for example:
-vm
C:\Program Files\Java\jdk1.7.0_71\bin\javaw.exe
Reason 3: Special characters ( #, !, #) in Eclipse installation directory.
Solution:
Make sure you don’t have any special characters.
Reason 4: You have added JAVA path two times in PATH system variable and both the path are different.
Solution:
Remove one incorrect/different JAVA path from PATH system variable.
Reason 5: You maybe using latest version of Eclipse, but you might be using wrong version or unsupported version of Java Virtual Machine (JVM).
Solution:
To check which version of java you are using open command prompt by pressing win+R key and type cmd and press enter. Now in that console type Java -version command to know java version.
Now research whether eclipse support that version or not.
Or
You can open “readme” folder in Eclipse folder and open readme_eclipse.html to see which version it supports.
for ones with Eclipse Neon
I wanted to run Eclipse Neon and had JRE 1.8 but JDK 1.7
It returned error=13
then I installed java JDK 1.8 and everything worked like a charm
I had this issue also. I had an old JDK1.8.0_05. I installed the newest JDK1.8.0_111 and everything works great now. Just be sure to update your environment variable.
I am on Windows 7 64 bit.
Using Eclipse Neon 1a.
Hope that helps someone.
I face same issue with sts 3.8.4, so I tried different settings but not luck,
I reinstall jdk again n tried but same problem.
Finally I downloaded sts 3.8.2 n it runs with out any issue.
Using windows 8, 64 bit os.
thanks
This can happen when the PATH environment variable is point to a wrong java instalation.
I'm using eclipse on what I thought were all 64 bit runtime environments. The current settings Java>installed JREs and Execution Environment all point to jdk1.6.0_30 which is a 64 bit version of the JDK. However, eclipse still thinks it's running a 32 bit version because when I run:
System.getProperty("sun.arch.data.model");
it returns 32 instead of 64.
And the external JNI resource that I compiled for 64 bit machines will not link to the shared .so file unless it's running in a 64 bit enviroment. (I'm getting word size mismatch errors when I try to do this)
So How can I reconfigure eclipse to run 64 bit jvm. Does eclipse itself have to be a 64 bit version?
:on linux
Edit: I have tried everyone's suggestions and nothing is working. I've changed the execution, and enviroment variables to point to the newst JDK I have which is 1.6_30. when I run the program from a command line I get 64 and amd64 as the value when I run the same program in eclise I get 32 and i386. Something is wrong in eclipse that is causing it to try and run it on a 32 bit JVM. when I try java -d32 -version it says that a 32 bit enviroment isn't installed but Eclipse doesn't know that. I've modified the Eclipse.ini file and still nothing is working. I've restarted eclipse after these changes...nothing. Can some one who knows eclipse well people help me out here. thanks
Add the -vm tag to eclipse.ini or the shortcut to explicitly specify a JRE. Note that the default for Windows XP is to use the CRAPPY JRE that comes with Windows.
-vm "%JAVA_HOME%/bin/javaw.exe"
In eclipse.ini add:
-Xmx8g
-d64
For me its working properly! . Make sure your path is c:\Program File not c:\Program File(X86) ( if you installed 64 bit JDK it should store in c:\ Program Files)
Eclipse configuration is explained here
The "installed JREs" (better use JDKs) are used for building and running your code and can be of different architecture or Java version. The JVM used for running Eclipse is defined in the eclipse.ini file. You should use the version for the architecture of the JVM.
Okay. This has been rather headache inducing, but I believe I have a solution. After changing the eclipse.ini, Go to your project properties. Under the Run/Debug settings, edit the launch configuration for your project. Under the JRE tag, click installed JREs. When that dialog comes up, click search. Go to your program files folder, NOT the x86 one, and let it search for your JREs. When the latest comes up, deselect the JRE that was currently selected and select the most recent JRE that it found. I renamed mine JRE7-64 just so I could identify a difference. This solved the issue on my end. Good luck
I think there is a bug in the Run Configuration page.
I had to add the 64-bit JRE in run configuration, select it, and DELETE the 32-bit entry (even though it was already deselected).
eclipse.ini didn't work for me.
This is Eclipse Luna.