在C#dot net应用程序中执行jar文件 我想在C#.net应用程序中执行一个jar文件。jar文件是一个控制台应用程序。jar文件与C#应用程序位于同一目录中。2.我想检查jdk是否安装在C#.net应用程序的frm中 我该怎么做

在C#dot net应用程序中执行jar文件 我想在C#.net应用程序中执行一个jar文件。jar文件是一个控制台应用程序。jar文件与C#应用程序位于同一目录中。2.我想检查jdk是否安装在C#.net应用程序的frm中 我该怎么做,c#,java,console,C#,Java,Console,使用Process启动java进程传递参数-jar yourjar.jar jdk通常安装在c:\Program Files\Java\jdk…中。检查此文件夹是否存在,它应该适合大多数情况。或者检查注册表中的HKEY\U LOCAL\U MACHINE\SOFTWARE\JavaSoft\Java开发工具包 使用Process启动java进程传递参数-jar yourjar.jar jdk通常安装在c:\Program Files\Java\jdk…中。检查此文件夹是否存在,它应该适合大多数

使用
Process
启动
java
进程传递参数
-jar yourjar.jar

  • jdk通常安装在
    c:\Program Files\Java\jdk…
    中。检查此文件夹是否存在,它应该适合大多数情况。或者检查注册表中的
    HKEY\U LOCAL\U MACHINE\SOFTWARE\JavaSoft\Java开发工具包

      • 使用
        Process
        启动
        java
        进程传递参数
        -jar yourjar.jar

      • jdk通常安装在
        c:\Program Files\Java\jdk…
        中。检查此文件夹是否存在,它应该适合大多数情况。或者检查注册表中的
        HKEY\U LOCAL\U MACHINE\SOFTWARE\JavaSoft\Java开发工具包


        • 拥有批处理文件,其中包含启动java应用程序所需的任何内容

          例如,“javaw-jar的类路径”

          更多

          关于问题2, 乔治老人的建议应该行得通

          如果java/bin文件夹位于环境路径中,您可以尝试:

          System.Diagnostics.Process.Start("java.exe", "-version");
          

          如果没有例外,您可能有一个有效的java.exe文件。

          有一个批处理文件,其中包含启动java应用程序所需的任何内容

          例如,“javaw-jar的类路径”

          更多

          关于问题2, 乔治老人的建议应该行得通

          如果java/bin文件夹位于环境路径中,您可以尝试:

          System.Diagnostics.Process.Start("java.exe", "-version");
          
          如果没有异常,您可能有一个有效的java.exe文件。

          c#方法

          可以用于启动任意应用程序,因此,如果您知道从命令行启动Java应用程序的命令,则可以推断要处理的参数:start()

          Java命令将是

          java -jar <jarfile> {and maybe <mainClass>}
          
          等等

          c#方法

          可以用于启动任意应用程序,因此,如果您知道从命令行启动Java应用程序的命令,则可以推断要处理的参数:start()

          Java命令将是

          java -jar <jarfile> {and maybe <mainClass>}
          
          等等

            catch (Win32Exception e)
                      {
                          if(e.NativeErrorCode == ERROR_FILE_NOT_FOUND)
                          {
                              Console.WriteLine(e.Message + ". Check the path.");
                          }