我正在编写一个应用程序,它通过使用C#中的Process对象的cmd.exe创建一个Java批处理文件的Java portlet。
当我将“Create”命令传递给cmd以创建portlet时,我收到如下错误:
'"java.exe"' is not recognized as an internal or external command,
operable program or batch file.
但是当我直接在cmd上输入这个命令时,它可以正常工作。
我在Windows 7上安装了JDK,并在环境变量中设置了JAVA_HOME和ANT_HOME变量。你能帮我纠正一下吗?
答案 0 :(得分:4)
你应该检查你的PATH变量。您可以使用set
命令设置java环境文件夹的正确路径。
答案 1 :(得分:2)
我不知道这是否会帮助正在查看此帖的其他人,但是当我遇到此问题时,因为我正在运行x64计算机并且java.exe已安装到ProgramFiles(x86)文件夹中。我只是将exe的路径添加到'PATH'环境变量中,然后启动就好了。
希望这有助于某人。
答案 2 :(得分:1)
尝试正确设置tha java path
你可以告诉我你得到的确切错误信息......答案 3 :(得分:1)
根据我的经验,这个问题与Java路径无关。实际上我已经为64位机器安装了java并用32位设置编译了我的C#程序。 32位程序无法调用64位程序。所以我将我的目标平台改为"任何CPU" ,它运行良好。
答案 4 :(得分:0)
我也遇到了同样的问题并找到了我的解决方案。它也可能对你有帮助。
希望它对你有所帮助。
答案 5 :(得分:0)
如果PATH变量中有多个值,请确保它们没有用结束分号后面的空格分隔(;)
答案 6 :(得分:0)
我有同样的问题并解决了它。我正在使用64位Windows 7和64位Java。将Configuration Manager中的编译目标设置为“x64”解决了它。如果你使用'任何CPU',那么构建可能会回退到'x86',这不适用于64位Java。所以你需要为不同的机器建立不同的构建......