簡體   English   中英

在 C# 中使用 .jar java 庫 API?

[英]Use a .jar java library API in C#?

我是一名入門級程序員,所以請在您的回復中進行描述。

我正在嘗試在我的 C# .net 應用程序中使用作為 .jar 文件給出的 Java API。 我不太了解 Java,但是當我嘗試運行這個 .jar 文件時,它說“沒有主類清單屬性”,所以這意味着它是一個庫? 此 Java API 還附帶一個 .java 文件,該文件顯示了如何使用該庫,但我看不到 .jar 中的代碼。

我在這個站點上發現了這個問題,其中一個答案是:“通過簡單的方式,您可以將 Java 類打包到 jar 文件中,然后在 C# 中使用 Process 類來執行和映射 IO 流。” 我對 C# 中的 Process 類半熟悉,但我不明白如何使用它在我的 C# .net 項目中使用 Java 庫。

這可能嗎? 還是那個答案不正確?

如果是這樣,您能否解釋一下我如何在我的 C# 應用程序中使用 .jar 庫。

您可以使用 IVKM.Net 來完成。 IVKM.NET 包括一個名為 ikvmc 的應用程序。 這是此工具的文檔:

http://www.ikvm.net/userguide/ikvmc.html

要使用它,請將您的 Java 代碼編譯成 Jar。

然后運行ikvmc程序:

ikvmc myCode.jar

如果您的 jar 包含 main() 函數,它將被轉換為可以在 CLR 上運行的 exe。 否則它會被轉換成dll。 要在您的項目中使用 dll,只需將它們添加為 Visual Studio 中的引用,您可以在 .Net 應用程序中訪問 Java 中可用的相同 API。

您還可以包含來自 ikvmc 的 IKVM.GNU.Classpath.dll dll,並在您的應用程序中使用標准的 java 類庫。

看看IKVM ......它有一些工具可以為您提供一定程度的互操作性。 當你說 Java API 時,我假設你想從 jar 中調用一些功能而不是僅僅執行它

  1. 您可以使用 IKVM.NET - http://www.ikvm.net/userguide/ikvmc.html

    在官方網站上下載 - 您可以獲得ikvmbin-7.2.4630.5 (Works up to Java 7)

    但是,在所有者的博客上,您可以下載更新的版本。 http://weblog.ikvm.net/default.aspx - 您可以獲得ikvmbin-8.1.5717.0 (適用於 Java 8)

    要創建 dll/exe 使用:

    ikvmc hello.jar

  2. 另一方面,如果您可以編輯 .jar lib(您創建它),您可以使用http://jni4net.com/項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM