مترجم جافا
مُترجم جافا هو مُترجم للغة برمجة جافا .
تُنتج بعض مُجمّعات لغة جافا شفرةً آليةً مُحسّنةً لمجموعة مُحدّدة من الأجهزة/ نظام التشغيل ، تُسمى نظام حاسوب مُخصّص للمجال . ومن الأمثلة على ذلك مُجمّع GNU للغة جافا الذي توقف تطويره الآن . [ 1 ]
الشكل الأكثر شيوعًا لمخرجات مترجم جافا هو ملفات فئة جافا التي تحتوي على تمثيل وسيط متعدد المنصات (IR)، ويسمى بايت كود جافا . [ 2 ]
تقوم آلة جافا الافتراضية (JVM) بتحميل ملفات الفئة وتقوم إما بتفسير رمز البايت أو بتجميعه في الوقت المناسب إلى رمز الآلة ثم ربما تحسينه باستخدام التجميع الديناميكي .
تم تحديد معيار حول كيفية التفاعل مع مترجمات جافا في JSR 199. [ 3 ]
يتم توفيرها بواسطة وحدة نمطيةjdk.compiler ، وتتطلب مجموعة تطوير جافا الكاملة (بدلاً من بيئة تشغيل جافا فقط )، وتوجد في javax.tools.*مساحة الاسم. [ 4 ]
مثال
package org.wikipedia.examples ;استيراد java.io.IOException ؛ استيراد java.io.File ؛استيراد javax.tools.JavaCompiler ؛ استيراد javax.tools.ToolProvider ؛public class Example { private final String TEST_FILE_NAME = "Test.java" ;public static void main ( String [] args ) throws IOException { File sourceFile = new File ( TEST_FILE_NAME ); if ( ! sourceFile . exists ()) { throw new IllegalArgumentException ( String . format ( "المسار %s غير موجود!" , TIME_FILE_NAME )); } JavaCompiler compiler = ToolProvider . getSystemJavaCompiler ();إذا كان ( المترجم == null ) { ارمِ استثناءً من نوع RuntimeException ( "المترجم غير متوفر. هل تستخدم JRE بدلاً من JDK؟" ); }int result = compiler.run ( null , null , null , sourceFile ) ;System.out.printf ( " نتيجة التجميع: % s%n" , result == 0 ? " نجاح" : " فشل" ); } }انظر أيضاً
- قائمة مترجمات جافا
- javac ، مُصرّف جافا القياسي في JDK من أوراكل
- Roslyn (مترجم) ، مترجم للغة C# يمكن استدعاؤه برمجيًا أيضًا
مراجع
- ↑ "GCJ - الماضي والحاضر والمستقبل" . مؤرشف من الأصل بتاريخ 2019-08-02 . تم الاطلاع عليه بتاريخ 2021-09-24 .
- ↑ "مواصفات آلة جافا الافتراضية، إصدار جافا SE 8، القسم 1.2" . مؤرشف من الأصل بتاريخ 24-09-2021 . تم الاطلاع عليه بتاريخ 24-09-2021 .
- ↑ "JSR 199: واجهة برمجة تطبيقات مُصرّف Java™" . مؤرشف من الأصل بتاريخ 24-09-2021 . تم الاطلاع عليه بتاريخ 24-09-2021 .
- ↑ "JavaCompiler (Java SE)" . docs.oracle.com . شركة أوراكل . تم الاطلاع عليه بتاريخ 21 أكتوبر 2025 .
روابط خارجية
- صفحة جافاك الخاصة بـ OpenJDK من صن
- ستيفان ديل، "مقدمة رسمية لتجميع جافا" ، البرمجيات - الممارسة والخبرة ، المجلد 28 (3)، الصفحات 297-327، مارس 1998.
فئات :
- مترجمات جافا
- طلبات مواصفات جافا
- نماذج أولية لبرمجة الحاسوب
