Java Jar文件类路径问题

Java Jar文件类路径问题,java,c#,jar,Java,C#,Jar,我正在开发一个C#应用程序,它可以访问控制台来运行java命令并执行一个特定的jar,但是当我运行程序时,执行的jar文件会在程序输出上生成他的文件,比如日志和配置,但是我想运行已经在一个特定文件夹中的jar和他的文件 问题是,我尝试了许多java参数,但jar生成的输出文件每次都会从VisualStudio项目转到调试文件夹 希望有人能理解我,我很困惑,对不起我的英语,我是巴西人 现在,谢谢你的支持 我只能猜测,因为缺少用于从C#程序中调用java程序的代码行。也不清楚你到底想要实现什么。决定

我正在开发一个C#应用程序,它可以访问控制台来运行java命令并执行一个特定的jar,但是当我运行程序时,执行的jar文件会在程序输出上生成他的文件,比如日志和配置,但是我想运行已经在一个特定文件夹中的jar和他的文件 问题是,我尝试了许多java参数,但jar生成的输出文件每次都会从VisualStudio项目转到调试文件夹 希望有人能理解我,我很困惑,对不起我的英语,我是巴西人
现在,谢谢你的支持

我只能猜测,因为缺少用于从C#程序中调用java程序的代码行。也不清楚你到底想要实现什么。决定是更改子进程中的“当前工作目录”还是更改主进程中的“当前工作目录”

子进程 我假设您希望使用类似以下代码执行类似于以下内容的东西
java-jar path\to\some.jar

using System.Diagnostics;
//...

ProcessStartInfo p = new ProcessStartInfo();
p.Arguments = new string[]{"-jar", "path\to\some.jar"; 
p.FileName = "java.exe";
p.WindowStyle = ProcessWindowStyle.Hidden;
p.CreateNoWindow = true;

using (Process proc = Process.Start(start))
{
     proc.WaitForExit();
}
改编自

然后你可以加上这一行

p.WorkingDirectory = "path\to";
改编自

使用特定的当前工作目录设置
p
实例所涵盖的子进程。这将为调用
java
子进程设置当前工作目录

主要过程 要为周围的主进程设置当前工作目录,请将此行添加到程序中:

System.IO.Directory.SetCurrentDirectory("some\other\path");

的MSDN文档我只能猜测,因为缺少用于从C#程序中调用java程序的代码行。也不清楚你到底想要实现什么。决定是更改子进程中的“当前工作目录”还是更改主进程中的“当前工作目录”

子进程 我假设您希望使用类似以下代码执行类似于以下内容的东西
java-jar path\to\some.jar

using System.Diagnostics;
//...

ProcessStartInfo p = new ProcessStartInfo();
p.Arguments = new string[]{"-jar", "path\to\some.jar"; 
p.FileName = "java.exe";
p.WindowStyle = ProcessWindowStyle.Hidden;
p.CreateNoWindow = true;

using (Process proc = Process.Start(start))
{
     proc.WaitForExit();
}
改编自

然后你可以加上这一行

p.WorkingDirectory = "path\to";
改编自

使用特定的当前工作目录设置
p
实例所涵盖的子进程。这将为调用
java
子进程设置当前工作目录

主要过程 要为周围的主进程设置当前工作目录,请将此行添加到程序中:

System.IO.Directory.SetCurrentDirectory("some\other\path");

MSDN Documentation for

在调用之前,您应该将当前工作目录设置为被调用程序所期望的目录。是的,我只是在想,但是我如何设置jar的工作目录呢?我尝试使用-cp参数,但没有结果您必须在调用java命令的周围环境中执行此操作。请帮助我,我对此非常着迷,我无法修改jar文件,它是预编译的,不是我的项目,我只从我的C#应用程序中调用它,怎么办(请显示您用于从C#启动java应用程序的代码。在调用它之前,您应该将当前工作目录设置为被调用程序所期望的目录。是的,我只是在想,但是我如何设置jar的工作目录?我尝试了-cp参数,但没有结果您必须在您需要的环境中执行此操作。)调用java命令。请帮助我,我对此很疯狂,我无法修改jar文件,它是预编译的,不是我的项目,我只从我的C#应用程序调用它,怎么办?:(请显示您从C#启动java应用程序所用的代码。