Jar文件类路径问题

时间:2017-01-25 00:30:02

标签: java c# jar

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

1 个答案:

答案 0 :(得分:2)

我只能猜测,因为缺少用于从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();
}

改编自here

然后你可以添加这一行

p.WorkingDirectory = "path\to";

改编自here

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

主要流程

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

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

SetCurrentDirectory

的MSDN文档