Использовать.jar API библиотеки Java в C#?

Я программист начального уровня, поэтому, пожалуйста, будьте внимательны в своих ответах.

Я пытаюсь использовать Java API, указанный как файл.jar в моем приложении C# .net. Я не знаю много Java, но этот файл.jar говорит "нет атрибута манифеста основного класса", когда я пытаюсь запустить его, так что это означает, что это библиотека? Этот Java API также поставляется с файлом.java, который показывает, как использовать библиотеку, но я не вижу код внутри.jar.

Я нашел этот вопрос на этом сайте, и один из ответов гласит: "Простым способом вы можете упаковать свои классы Java в файл JAR, а затем в C# использовать класс Process для выполнения и отобразить поток ввода-вывода". Я почти знаком с классом Process в C#, но я не понимаю, как я мог бы использовать его для использования библиотеки Java в моем проекте C# .net.

Это возможно? или этот ответ был неверным?

Если да, не могли бы вы объяснить, как я могу использовать библиотеку.jar в своем приложении C#.

2 ответа

Решение

Вы можете сделать это с помощью IVKM.Net. IVKM.NET включает приложение под названием ikvmc. Вот документация для этого инструмента:

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

Чтобы использовать его, скомпилируйте ваш код Java в Jar.

Затем запустите программу ikvmc:

ikvmc myCode.jar

Если ваш jar содержит функцию main(), он будет преобразован в исполняемый файл, который можно запустить на CLR. В противном случае он будет преобразован в DLL. Чтобы использовать библиотеки DLL в вашем проекте, просто добавьте их в качестве ссылок в Visual Studio, и тот же API, который был доступен для вас в Java, будет доступен в вашем приложении.Net.

Вы также можете включить dll IKVM.GNU.Classpath.dll из ikvmc и использовать стандартные библиотеки классов Java в своем приложении.

Посмотрите на IKVM... у него есть инструменты, чтобы дать вам некоторый уровень взаимодействия. Когда вы говорите, Java API, я предполагаю, что вы хотите вызвать некоторые функции из jar, а не просто выполнить его

  1. Вы можете использовать IKVM.NET - http://www.ikvm.net/userguide/ikvmc.html

    На официальном сайте в скачивании - вы можете получитьikvmbin-7.2.4630.5 (работает до 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/.

Другие вопросы по тегам