ti dirò di piu se dal path delle variaibili d'ambiente tolgo
c:\sdk\bin

il comando java scritto da c: lo continua a riconoscere (mentre javac no)

come fa il sistema a capire dove andare a ricercare il comando java se non ce lo ha scritto nel path?!?