328

enter image description here

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

Prince OfThief
  • 6,075
  • 13
  • 38
  • 52
  • 3
    http://stackoverflow.com/a/9636283/405117 this helped me – Vikram Nov 01 '12 at 20:59
  • 12
    If Eclipse stopped working after you upgraded from Java 7 to Java 8 (1.8.0 u25 or higher), it's possible your Eclipse is 64-bit and requires a 64-bit version of the JRE. **See [this question](http://stackoverflow.com/q/27019786/1134080) for more details.** – ADTC Jan 03 '15 at 14:40
  • my case is I uninstalled older version of jdk, while eclipse still trying to find it. – sophia Jan 20 '15 at 23:41
  • I've been installing eclipse on my Windows PCs since about 2008 and have not once never encountered error code 13 on my first run. You would think this would have been sorted by now. – Andrew S May 13 '15 at 02:08
  • 2
    possible duplicate of [Can't start Eclipse - Java was started but returned exit code=13](http://stackoverflow.com/questions/11461607/cant-start-eclipse-java-was-started-but-returned-exit-code-13) – durron597 Sep 09 '15 at 13:47
  • If someone get stuck with problem, please check this solution. It so from another solutions and it helps me https://stackoverflow.com/a/47948092/7856586 – user7856586 Feb 15 '18 at 21:51

33 Answers33

180

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).

jmagder
  • 1,931
  • 2
  • 11
  • 3
  • 5
    For me it was same issue with latest eclipse. If you want to use 64bit java, you need to install 64bit eclipse. – Konstantin Petrukhnov Aug 21 '11 at 07:57
  • 2
    Yes, that was my problem. I downloaded the 32 bit jdk. I'm a java noob. Thanks a lot. – live-love May 22 '12 at 14:03
  • 1
    I feel really stupid now, downloading both 64-bit eclipse and jdk but still trying to specify with x86.... At least i'm not alone xD – AmazingDreams Nov 03 '12 at 10:16
  • 2
    @prince-ofthief it would be great if you could mark this answer as the accepted one as this is the real cause of the issue you had and it is a little misleading having a worse answer marked as the accepted one. Thanks! – Clint Eastwood Oct 06 '13 at 23:33
  • 3
    I was launching 32-bit Eclipse against 64-bit JVM. – Justin Skiles Oct 21 '13 at 01:12
  • 1
    This helped me solve Eclipse not wanting to start up after installing new software. For some reason, it reverted to using a 32-bit JRE, when I was running Eclipse 64-bit. Worth noting is that the accepted answer (with 30 upvotes), did not help at all. +1 – TLP Nov 25 '14 at 01:07
133

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
mecsco
  • 2,250
  • 1
  • 14
  • 25
  • 5
    -vm C:\Program Files\Java\jre6\bin\javaw.exe -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 -vmargs -Xms40m -Xmx384m – Prince OfThief Feb 09 '11 at 13:29
  • 1
    You could always try placing the 2 new VM lines just before the -vmargs statements, instead of at the very start? – mecsco Feb 09 '11 at 13:45
  • 11
    Okey, I solve it. I just reinstall JDK 64-bit, re-extact eclipse-64bit and edit eclipse.ini again. – Prince OfThief Feb 09 '11 at 14:13
  • Added -vm in eclipse.ini its worked out ..Thanks @danmec – gks Feb 09 '15 at 13:34
  • 3
    Had jdk7 installed, then upgraded to 8, running Windows 7, the ini file wasn't working until i used this format: -vm C:/Program Files/Java/jdk1.7.0_71/bin no quotes. not sure if the forward slashes are required or not. – Nick May 06 '15 at 13:51
  • Oracle gave me 32-bit Java by default. >. – Grault Jun 11 '15 at 20:24
  • Thanks, putting -vm before the -vmargs is what fixed it for me! – Dave Baghdanov Aug 22 '16 at 21:19
  • usage: "-vm C:\Program Files\Java\jdk1.8.0_91\bin" always provide location upto "bin" folder for correct JVM type. – Prashant Sep 16 '16 at 17:04
34

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 .

Heri
  • 3,796
  • 1
  • 25
  • 45
  • 2
    Thanks for figuring this out. What's the proper way to fix that? Should I update the env var and clean this link? – plus- Oct 22 '14 at 09:49
  • I deleted the new entry in PATH env var and added a -vm entry in eclipse.ini which points to a 64bit SDK. But I doubt that the deletion of the PATH entry is the correct way. On the next update it probably will be there again. I asked an own question regarding this issue (http://stackoverflow.com/questions/26502059/why-does-chrome-java-updater-installs-a-global-32bit-jre-on-a-64bit-machine?noredirect=1#comment41638420_26502059) – Heri Oct 22 '14 at 13:58
  • 1
    yesterday this happened again, as I feared: After the java update initiated by chrome my SpringToolSuite did not start anymore with the same error (The STS was newly installed and had not yet the -vm argument in the ini file). – Heri Nov 18 '14 at 13:26
  • 7
    Removed the c:\ProgramData\Oracle\Java\javapath from PATH env var and now it WORKS!! Thanks! – skoperst Jan 08 '15 at 04:30
  • Updated the path variable to use the %JAVA_HOME%\bin and corrected set the %JAVA_HOME% resolved the issue. Things were working properly and something (some update somewhere) broke the things. – Nitb Mar 07 '19 at 13:37
  • @Heri What I did was changing the order of the env variables: I moved the ...\Oracle\Java\javapath entry to the very end and IT WORKED! The next Chrome update will hopefully not touch it next time. – Andrea Dusza Mar 23 '19 at 06:53
33

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.

Nathan Tuggy
  • 2,239
  • 27
  • 28
  • 36
junaidp
  • 9,771
  • 28
  • 85
  • 133
  • Thanks! Got the error when trying to install Google's Dart Editor (64-bit). I simply had to change the .ini to reference the 64-bit Java version and it worked. – Lucius Aug 25 '13 at 20:43
  • 5
    That is not entirely correct. A 32bit JDK / Eclipse combo will work well on a 64bit Windows. – marsbear Feb 07 '14 at 15:03
  • this is what fixed my issue (again). i actually was searching for this answer after updating my java and getting the same issue. it finally hit me that i'm using a 32bit version of firefox as my default browser so when the autodownload of java happened, it guessed for me that i needed the 32 bit and i went with that install location for my .ini – Jon B Apr 21 '14 at 16:26
22

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

Sireesh Yarlagadda
  • 10,572
  • 2
  • 65
  • 71
17

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.

jakobengblom2
  • 4,806
  • 2
  • 23
  • 30
  • Similar here as well. I was trying to use 64-bit Eclipse on a WIn64 PC, but I guess I had 32-bit Java. Anyways, switched to 32-bit Eclipse, and all is well. – Raw_Input Jan 05 '15 at 06:13
  • I also saw this. Notably the evil installer had installed 32-bit Java on win64 without any notice about it. – XTL Jul 08 '15 at 18:51
14

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

Dan Grossman
  • 49,405
  • 10
  • 105
  • 95
6

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.

Neo
  • 3,868
  • 4
  • 36
  • 49
  • No mention of this in the "readme" file or in the error message. Doesn't inspire any confidence in Eclipse to someone evaluating it for use. – David Spector Oct 10 '19 at 12:28
4

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.

Rips
  • 1,852
  • 1
  • 23
  • 41
4

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.

Sam7
  • 3,062
  • 2
  • 33
  • 53
2

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.

Etibar - a tea bar
  • 1,783
  • 2
  • 14
  • 28
  • You can have both 32-bit and 64-bit JRE installed at the same time. In fact, you will need it if you're using a 32-bit browser and a 64-bit Eclipse installation. – ADTC Jul 15 '15 at 03:51
2

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

HimalayanCoder
  • 8,577
  • 4
  • 49
  • 57
2

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".

nicomp
  • 3,775
  • 4
  • 19
  • 43
2

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
oiyio
  • 3,108
  • 3
  • 34
  • 41
2

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.

asgs
  • 3,718
  • 6
  • 36
  • 49
1

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.

Andreas Hartmann
  • 1,616
  • 3
  • 18
  • 32
1

Just uninstalled jre-32 bit version and It worked fine for me.

Payam R
  • 92
  • 3
  • 8
1

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).

1

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.

Community
  • 1
  • 1
Thorsten Schöning
  • 2,588
  • 17
  • 34
0

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

dongpf
  • 1,417
  • 15
  • 8
0

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
leon_
  • 84
  • 3
0

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

kingston
  • 9,372
  • 12
  • 51
  • 96
0

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.

Prasanth RJ
  • 127
  • 1
  • 8
0

I did couple of things inorder to get rid of this annoying error as modifying .ini never worked for me.

  1. Installed latest JDK
  2. Delete old eclipse IDE folder completely.
  3. 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.

Shafi Ulla
  • 79
  • 5
0

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
IvanRF
  • 6,305
  • 5
  • 43
  • 66
0

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.

Vibha Sanskrityayan
  • 1,599
  • 1
  • 13
  • 11
  • 2
    Please don't post identical answers to multiple questions. Post one good answer, then vote/flag to close the other questions as duplicates. If the question is not a duplicate, *tailor your answers to the question.* – durron597 Sep 09 '15 at 13:45
0

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

pawpaw
  • 135
  • 1
  • 1
  • 11
0

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.

blong824
  • 3,590
  • 13
  • 48
  • 72
0

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

asifaftab87
  • 985
  • 22
  • 26
0

This can happen when the PATH environment variable is point to a wrong java instalation.

0

1 ) Open the SpringToolSuite4.ini File.
2 ) Search For the "openFile" text in the SpringToolSuite4.ini file.
3 ) Provide the javaw.exe file location in SpringToolSuite4.ini
4 ) Note : Provide the New Line between -vm and your javaw.exe file location path as shown below.

openFile
-vm
C:\Program Files\Java\jdk1.8.0\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Xms256m

Lova Chittumuri
  • 2,014
  • 1
  • 20
  • 25
0

I tried many way and placed -VM argument at suggested place. But It would not work. Finally I got solution. -Vm args should be place eclipse.ini file before execution of any plugin or jar. I tried with latest eclipse [Photon ] in ubuntu 18.04 It is perfectly working for me.

-startup
-vm        
/usr/local/java/jdk1.8.0_251/bin/java.exe
plugins/org.eclipse.equinox.launcher_1.5.700.v20200207-2156.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.1100.v20190907-0426
-product
org.eclipse.epp.package.jee.product
-showsplash
org.eclipse.epp.package.common
--launcher.defaultAction
openFile
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
-Dosgi.requiredJavaVersion=1.8
-Dosgi.dataAreaRequiresExplicitInit=true
-Xms256m
-Xmx2048m
--add-modules=ALL-SYSTEM
Rajeev Rathor
  • 1,360
  • 19
  • 17
-1

Well, it better not be Eclipse 3.1.x and Java 7. I resolved this combination by upgrading to Eclipse 3.8.x.