When you call java -version
in your windows command line it will consult the PATH
environment variable to locate the java
executable.
subprocess.call
which I assume you are using there seems to not use that same windows PATH
variable on Windows in your case. Perhaps if you enforced that it spawns a shell (which is not considered safe according to the docu) it would work.
call("java -version", shell=True)
In case you have multiple Java installations (i.e a 64 bit and 32 bit JRE), the easiest solution would be to hardcode the absolute path to your java 64 bit executable
call("C:\\Program Files\\Java\\jre7\\bin\\java -version")