Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Missing tools.jar when launching STS application

I have the latest STS4. I am using installed java-1.8 JDK not embedded as the execution environment. My project just runs fine without any issue.

However when I launch the STS application itself I have a pop up saying "Missing tools.jar"

ScreenShot of the error

I have already tried:

  1. pointing JAVA_HOME to different JDK
  2. added -vm args in the .ini file.

Yet I cannot get rid of this pop up.

like image 321
upHiller Avatar asked Oct 05 '18 09:10

upHiller


People also ask

Why tools jar is missing?

If you're using newer Java versions, it could happen that during the start of STS/Eclipse you get error saying that tools. jar could not be found. Since this tools. jar library could not be found in JRE, what you need to do is make your STS/Eclipse use JDK since it contains tools.

Is JDK required for STS?

STS 3.9. 1 requires a JDK 8 or JDK9 to run on top of. Nevertheless the native Eclipse launcher component might pick up a JRE or an older JDK automatically if you don't specify which JDK to run STS on top of. To avoid this, you can specify the JDK in the sts.

Why is tools jar used?

tools. jar will give support to your daily-use java commands, e.g. javac , javap . It also contains some infrastructures for JMI and applet. You can use jar xvf tools.


1 Answers

I solved this same problem by modifying the file "eclipse.ini". First I tried to solve it by modifying the file SpringToolSuite4.ini, but nothing happened, because I previusly had installed the eclipse ide, and the change in SpringToolSuite4.ini didn't work. then I modified the file eclipse.ini; and it worked.

The changes that I did in eclipse.ini are detailed below:

To check with what Java version (JRE or JDK) Eclipse is running, do the following:

  • Open the menu item Help > About Eclipse. (On the Mac, it’s in the Eclipse-menu, not the Help-menu)
  • Click on Installation Details.
  • Switch to the tab Configuration
  • Search for a line that starts with -vm. The line following it shows which Java binary is used.

Depending on the name and location of the used Java binary one can figure out if a JRE or a JDK is used:

  • If the path contains “jre” (e.g. as in C:\Program Files\Java\jre6\bin\client\jvm.dll) it is a JRE
  • If the path contains “jdk” (e.g. as in C:\Program Files\Java\jdk1.6.0_31\bin\javaw.exe) it is a JDK.

If no JDK is used for Eclipse, change it:

  • Quit Eclipse if it is running
  • Go to the Eclipse installation directory and open the file eclipse.ini in a text editor.
  • Search for the line -vmargs
  • Before the line -vmargs, add two lines:

    On the first line, write -vm

    On the second line, write the path to your JDK installation (usually something like: C:\Program Files\Java\jdk1.6.0_31\bin\javaw.exe on Windows)*

source: https://matsim.org/docs/devguide/eclipse/jdk

like image 185
jomitame Avatar answered Oct 15 '22 09:10

jomitame