Ant can't find Javac. No matter what I do it always claims JAVA_HOME is "C:\Program Files\Java\jre6"

25,861

Solution 1

Well ANT now works.

What did I do?

I removed it from c:\program files and 'reinstalled' it into "c:\ant"

Seems like it doesn't like non 8.3 filenames or directories.

Funnily enough I did this only because I misread the part of the manual that suggested ANT shouldn't be in non 8.3 style locations on 95/98/ME. I didn't spot the OS reference and gave it a go. I'm running Vista.

Oh well...

Thanks for your help guys.

Solution 2

In eclipse set the installed JRE setting to the JDK - in the project (project properties -> Java Build Path-> Libraries), or global default in preferences (Java->Installed JREs). The eclispe setting is stronger than the system variable.

Solution 3

Just include tools.jar on the ant classpath, wherever it is installed.

Share:
25,861
user129345
Author by

user129345

Updated on July 10, 2022

Comments

  • user129345
    user129345 almost 2 years

    ...and that's wrong.

    Here's the error I get:

    BUILD FAILED C:_TraderPlatform\Clients\Open\Open\Java\Applets\PPDataTransporter\nbproject\build-impl.xml:338: The following error occurred while executing this line: C:_TraderPlatform\Clients\Open\Open\Java\Applets\PPDataTransporter\nbproject\build-impl.xml:158: Unable to find a javac compiler; com.sun.tools.javac.Main is not on the classpath. Perhaps JAVA_HOME does not point to the JDK. It is currently set to "C:\Program Files\Java\jre6"

    I've set an environment variable called JAVA_Home to point to: "C:\Program Files\Java\jdk1.6.0_12"

    Javac.exe is definitely in C:\Program Files\Java\jdk1.6.0_12\bin

    I've got %JAVA_HOME%\Bin in my PATH variable.

    I've mucked around with the various 'JavaHome' settings under HKLM\SOFTWARE\JavaSoft and I'm now utterly stuck.

    All I wanted to do was build a Java applet from the command line using the build.xml that netbeans had knocked up for the project.

    Any ideas anybody?

  • user129345
    user129345 almost 15 years
    it's there all in upper case and PATH returns the right values
  • David Webb
    David Webb almost 15 years
    On Windows, Environment variables are case-insensitive.
  • ViperDrake
    ViperDrake over 14 years
    I was getting the same problem in eclipse, where i was using an ant plugin. I could not find any mistakes in the JAVA_HOME. I was looking at the property page for ant where it saud that tools.jar is required on the classpath for ant. I did that and the problem vanished.
  • Devanshu Mevada
    Devanshu Mevada over 14 years
    I think this can work if you use a 8.3 file name for ANT_HOME e.g. C:\Progra~1. Installing Ant in a short, 8.3 path such as C:\Ant is a good practice though as stated in the documentation.