将jar文件添加到C#类库中

时间:2012-01-18 10:18:16

标签: c# visual-studio-2010 resources jar

我有一个运行jarFile的C#类库

string args="java -jar jar.jar...";
ProcessStartInfo startInfo = new ProcessStartInfo("java.exe", args);
Process runProc = Process.Start(startInfo);

但是当从应用程序使用dll时,我发现必须将jar文件放在应用程序的工作目录中或指定完整路径。

我不喜欢这两个选项 - absulote路径不好,并要求用户将jar文件复制到他的工作目录以便使用dll不舒服。

是否有一些替代方法,将jar文件嵌入到类库中?

4 个答案:

答案 0 :(得分:5)

您可以将jar文件添加到项目中,并在文件属性中将其设置为contentCopy if newer

这将在编译期间将其复制到输出文件夹,并确保它随应用程序一起分发。

另一种选择是embed the file as a resource - 这使它成为应用程序可执行文件的一部分,并允许您在应用程序中访问它。但是,为了单独执行它,您需要将其解压缩并保存到文件中。

答案 1 :(得分:0)

如果我遇到这种情况,我会尝试像Resouce一样添加* .jar文件。 欢呼声。

答案 2 :(得分:0)

看看IVKM.Net。

你可以找到它here(Scurial'答案)

答案 3 :(得分:0)

您可以将jar作为嵌入式资源嵌入类库中。

然后当你需要jar时,将其读出并将其写入本地文件。

reading an embedded resource out and writing to file

上查看此其他stackoverflow问题