我有一个运行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文件嵌入到类库中?
答案 0 :(得分:5)
您可以将jar文件添加到项目中,并在文件属性中将其设置为content
和Copy if newer
。
这将在编译期间将其复制到输出文件夹,并确保它随应用程序一起分发。
另一种选择是embed the file as a resource - 这使它成为应用程序可执行文件的一部分,并允许您在应用程序中访问它。但是,为了单独执行它,您需要将其解压缩并保存到文件中。
答案 1 :(得分:0)
如果我遇到这种情况,我会尝试像Resouce一样添加* .jar文件。 欢呼声。
答案 2 :(得分:0)
看看IVKM.Net。
你可以找到它here(Scurial'答案)
答案 3 :(得分:0)
您可以将jar作为嵌入式资源嵌入类库中。
然后当你需要jar时,将其读出并将其写入本地文件。
上查看此其他stackoverflow问题