[英]Call Java method from .Net
我必須從C#.Net concol應用程序中調用java方法。
以下鏈接的解決方案
Process myProcess = new Process();
Process.StartInfo.UseShellExecute = false;
myProcess.StartInfo.FileName = "java";
myProcess.StartInfo.Arguments = "-jar D:\\myjava.jar";
myProcess.Start();e
不允許從jar文件向.Net控制台應用程序返回有用的值(例如,字符串對象)。
另一種方法可以使用IKVM,但是開發已經結束,並且在穩定的企業解決方案中使用它似乎已經很老了。
如何調用java方法和geta字符串作為結果值?
IKVM非常重量級(更不用說已停產),因此,如果可以避免它,它可能會更容易。
如果Java程序可以在STDOUT上生成其輸出(即寫入控制台),則可以通過Process
對象讀取該輸出。
例如:
Process myProcess = new Process();
Process.StartInfo.UseShellExecute = false;
myProcess.StartInfo.FileName = "java";
myProcess.StartInfo.Arguments = "-jar D:\\myjava.jar";
myProcess.StartInfo.RedirectStandardOutput = true;
myProcess.Start();
var output = process.StandardOutput.ReadToEnd();
您可能需要嘗試在ProcessStartInfo
上設置其他屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.