Reputation: 587
I'm running Windows 8 and I can not get javac to work.
I have set my PATH in environmental variables to
C:\Program Files (x86)\Java\jdk1.7.0_17\bin
I have tried both with and without ';' but to no avail.
I recently had this issue on my desktop and adding ; worked but it's not in this case.
I have made sure that javac does exist in the bin too.
Any suggestions on fixes would be greatly appreciated.
EDITS echo %PATH% gives:
C:\Users\Arktri\Desktop>echo %PATH%
C:\Program Files (x86)\Intel\iCLS Client\;
C:\Program Files\Intel\iCLS Client\;
C:\Windows\system32;C:\Windows;
C:\Windows\System32\Wbem;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;
C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;
C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;
C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;
C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;
C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;;
C:\Program Files (x86)\Java\jre7\bin
And the exact error is: 'javac' is not recognized as an internal or external command, operable program or batch file.
Upvotes: 32
Views: 198752
Reputation: 19
Just type enviormental vairables in start menu, and you will see
Edit the system enviormental...,
click enviromental variables
click in user vairables list:
Path (ONCE)
Click New
Copy & Paste You're Bin directory for the jdk.
e.g. C:\Program Files\Java\jdk-1.8\bin
Hit Enter
Open New CMD
Type 'javac'
Upvotes: 0
Reputation: 291
Path
C:\Program Files\Java\jdk1.7.0_76\bin
Now you're set. Type javac
in cmd. All javac options will be displayed.
EDIT: As @MediaMaker pointed out, after completing the above steps, you need to open a new command prompt for it to work.
Upvotes: 29
Reputation: 21
Easiest way: search for javac.exe in windows search bar. Then copy and paste the entire folder name and add it into the environmental variables path in advanced system settings.
Upvotes: 2
Reputation: 1457
do this: 1. run CMD (WIN+R then type in CMD) 2. Type this:
set PATH=%PATH%; java installation path\bin
Replace "java installation path" with the directory JDK is installed in, such as C:\Program Files (x86)\Java. Be sure to add the \bin after the JDK directory, because this points to "javac" and "java" (BIN stands for "binaries")
This way, you can run the Java compiler from anywhere. It is impossible to CD to the JDK directory because it has a space in Program Files, and DOS will not let you CD to these directories.
Upvotes: 0
Reputation: 15
I'm searched many answers that suggest me to type in cmd:
set path = "%path%;c:program files\java\jdk1.7.0\bin"
but this is WRONG!
the right solution is that you leave "set" and just type
path = %path%;c:program files\java\jdk1.7.0\bin
P/s: of course you have to replace "jdk1.7.0" folder by your current java version folder. This works well on win 7 32bit, but I think it also works on win 8 - try it!
Upvotes: 1
Reputation: 4956
You don't have jdk1.7.0_17 in your PATH - check again. There is only JRE which may not contain 'javac' compiler.
Besides it is best to set JAVA_HOME variable, and then include it in PATH.
Upvotes: 0
Reputation: 7179
As far as I can see you have the JRE
in your PATH
, but not the JDK
.
From a command prompt try this:
set PATH=%PATH%;C:\Program Files (x86)\Java\jdk1.7.0_17\bin
Then try javac
again - if this works you'll need to permanently modify your environment variables to have PATH
include the JDK
too.
Upvotes: 46
Reputation: 70909
Start off by opening a cmd.exe session, changing directory to the "program files" directory that has the javac.exe executable and running .\javac.exe.
If that doesn't work, reinstall java. If that works, odds are you will find (in doing that task) that you've installed a 64 bit javac.exe
, or a slightly different release number of javac.exe
, or in a different drive, etc. and selecting the right entry in your path will become child's play.
Only use the semicolon between directories in the PATH environment variable, and remember that in some systems, you need to log out and log back in before the new environment variable is accessible to all environments.
Upvotes: 0