java更新后,使用java.exe启动进程失败

java更新后,使用java.exe启动进程失败,java,c#,powershell,Java,C#,Powershell,我们有一个运行Windows server 2012 R2的虚拟服务器。周五,java的版本从1.8.0_27更新为1.8.0_40。据我所知,这是唯一的改变 从那时起,我可以直接从命令行或批处理文件中运行java,但以前使用的powershell脚本使用启动进程来启动java,例如。 $process=Start process-FilePath c:\ProgramData\Oracle\java\javapath\java.exe-ArgumentList$report\u args-Pa

我们有一个运行Windows server 2012 R2的虚拟服务器。周五,java的版本从1.8.0_27更新为1.8.0_40。据我所知,这是唯一的改变

从那时起,我可以直接从命令行或批处理文件中运行java,但以前使用的powershell脚本使用启动进程来启动java,例如。
$process=Start process-FilePath c:\ProgramData\Oracle\java\javapath\java.exe-ArgumentList$report\u args-PassThru-Wait
给出错误“启动进程:此命令无法完全运行,因为系统无法找到所需的所有信息。”java可执行文件实际上已启动并正确完成其任务,但与此同时,powershell脚本已开始报告错误

System.Diagnostics.Process.Start(在C#中)在启动java时也报告失败


关于消息“启动进程:此命令无法完全运行,因为系统无法找到所需的所有信息”的问题,您有什么想法吗?

不确定是否找到了修复方法。(在我的计算机上)中的c:\ProgramData\Oracle\java\javapath\java.exe文件不是exe文件,而是一个符号链接文件。您应该检查Properties->Target是否设置为安装新版本java的正确目录。当System.Diagnostics.Process.Start指向路径变量上的符号链接时,我在使用它时也遇到问题。它似乎不知道如何使用is,并要求我为文件类型.exe选择一个默认程序。(不要为.exe…选择文件关联。)。您可以将路径指向C:/ProgramFile/Java/Bin/for Java.exe。目前还没有解决方案,我的解决方法是将Java保持在旧版本(这不太理想)——我将在本周末讨论您的想法。如果它与符号链接有关,则可以解释为什么我在另一台服务器上没有此问题。谢谢你的建议!