IKVM

IKVM (المعروف سابقًا باسم IKVM.NET ) هو تطبيق للغة جافا لأنظمة البنية التحتية للغة المشتركة مثل Mono وإطار عمل Microsoft .NET . IKVM برنامج مجاني ، يتم توزيعه بموجب ترخيص zlib للبرمجيات الحرة المتساهل . [ 2 ]

بدأ العمل على IKVM في أوائل عام 2000 للمساعدة في نقل حزمة تقارير مبنية على Java من Sumatra إلى Microsoft .NET. توقف المطور الأصلي، جيرون فريجترز، عن العمل على IKVM في عام 2015. [ 3 ] في عام 2018، أنشأت Windward Studios نسخةً معدلةً من IKVM.NET لمواصلة تطوير IKVM مفتوح المصدر. [ 4 ] في عام 2022، استأنف جيروم هالتوم وآخرون العمل على مؤسسة جديدة على GitHub وأنهوا دعم .NET Core . [ 5 ]

عناصر

يتضمن IKVM المكونات التالية:

  • آلة جافا الافتراضية (JVM) المنفذة في .NET
  • تطبيق .NET لمكتبات فئات جافا
  • أداة تقوم بترجمة بايت كود جافا ( ملفات JAR ) إلى .NET IL ( ملفات DLL أو EXE ).
  • أدوات تُمكّن التوافق بين Java و .NET

يمكن لـ IKVM تشغيل كود جافا المُجمّع ( الرمز البايتي ) مباشرةً على Microsoft .NET أو Mono. يتم تحويل الرمز البايتي أثناء التشغيل إلى CIL ثم تنفيذه.

وعلى النقيض من ذلك، فإن J# عبارة عن بنية Java على إطار عمل .NET، في حين أن IKVM هو في الواقع إطار عمل Java يعمل فوق إطار عمل .NET.

كان جيرون فريجترز المساهم الرئيسي في IKVM. وهو المدير التقني لشركة سومطرة سوفتوير، ومقرها هولندا. [ 6 ]

اسم

يُعدّ جزء "IKVM" من الاسم تلاعبًا بكلمة " JVM " حيث قام المؤلف "بأخذ الحرفين المجاورين لحرف J". [ 7 ]

حالة

يقوم IKVM 8 بتنفيذ Java 8 .

تُدير منظمة IKVM أيضًا IKVM.Maven.Sdk، [ 8 ] وهو امتداد لنظام PackageReference الخاص بـ .NET يسمح بالرجوع المباشر إلى عناصر Maven وتحويلها برمجيًا. يتوفر IKVM.Maven.Sdk أيضًا على NuGet.org. [ 9 ]

مثال

فيما يلي تطبيق .NET مكتوب بلغة جافا، يقوم بطباعة قائمة الملفات الموجودة في الدليل الحالي.

لاحظ أنه في IKVM، System.*تتم كتابة مساحة الاسم في .NET على النحو التالي cli.System.*: . [ 10 ]

package org.wikipedia.examples ;استيراد cli.System.IO.* ;public class Example { public static void main ( String [] args ) { String [] files = Directory . GetFiles ( "." ); for ( String file : files ) { System . out . println ( file ); } } }

انظر أيضاً

مراجع

  1. "الإصدار 8.15.0" . 6 ديسمبر 2025. تم الاطلاع عليه في 7 ديسمبر 2025 .
  2. "الترخيص" . www.ikvm.net . مؤرشف من الأصل بتاريخ 22-02-2020 . تم الاطلاع عليه بتاريخ 10-03-2007 .
  3. "نهاية IKVM.NET" . مؤرشف من الأصل بتاريخ 18 يوليو 2017. تم الاطلاع عليه بتاريخ 22 يوليو 2017 .
  4. " IKVM لا تزال قائمة وبصحة جيدة" . www.windwardstudios.com
  5. "IKVM - آلة جافا الافتراضية لـ .NET" . جيت هاب . 27 أغسطس 2022.
  6. "Sumatra Software bv" تم الاطلاع عليه بتاريخ 30-04-2014 .
  7. "أرشيف القائمة البريدية osdir لمجموعة java.ikvm.devel" . مؤرشف من الأصل بتاريخ 27-12-2012 . تم الاطلاع عليه بتاريخ 09-10-2012 .
  8. "IKVM.Maven.Sdk" . GitHub .
  9. ^ "IKVM.Maven.Sdk" . www.nuget.org .
  10. "دليل IKVM التعليمي" . ikvm.org . استوديوهات ويندوارد، جيروم هالتوم. 2023.