يعد Eclipse JDT Language Server تطبيقًا خاصًا بلغة Java لبروتوكول خادم اللغة ويمكن استخدامه مع أي محرر يدعم البروتوكول، لتقديم دعم جيد للغة Java. الخادم يعتمد على:
يتطلب خادم اللغة بيئة تشغيل Java 17 (كحد أدنى) للتشغيل. يجب أن يتم تعيين ذلك إما في متغير البيئة JAVA_HOME
، أو على مسار المستخدم.
هناك عدة خيارات لتثبيت Eclipse.jdt.ls:
jdtls
أو eclipse.jdt.ls
.git clone
وقم ببناء المشروع عبر JAVA_HOME=/path/to/java/17 ./mvnw clean verify
. قم بشكل اختياري بإلحاق -DskipTests=true
لتجاوز الاختبارات. يقوم هذا الأمر بإنشاء الخادم في المجلد ./org.eclipse.jdt.ls.product/target/repository
.بعض المحررين أو ملحقات المحرر تحتوي على Eclipse.jdt.ls أو تحتوي على منطق لتثبيته. في هذه الحالة، ما عليك سوى تثبيت ملحق المحرر. على سبيل المثال، بالنسبة لـ Visual Studio Code، يمكنك تثبيت Extension Pack for Java وسوف تعتني بالباقي.
إذا قمت ببناء Eclipse.jdt.ls من المصدر، cd
إلى ./org.eclipse.jdt.ls.product/target/repository
. إذا قمت بتنزيل إصدار رئيسي أو لقطة، فاستخرج المحتويات.
لبدء تشغيل الخادم في المحطة النشطة، اضبط الأمر التالي كما هو موضح أدناه وقم بتشغيله:
java
-Declipse.application=org.eclipse.jdt.ls.core.id1
-Dosgi.bundles.defaultStartLevel=4
-Declipse.product=org.eclipse.jdt.ls.core.product
-Dlog.level=ALL
-Xmx1G
--add-modules=ALL-SYSTEM
--add-opens java.base/java.util=ALL-UNNAMED
--add-opens java.base/java.lang=ALL-UNNAMED
-jar ./plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar
-configuration ./config_linux
-data /path/to/data
-configuration
: هذا هو المسار إلى دليل تكوين النظام الأساسي الخاص بك. بالنسبة لنظام التشغيل Linux، استخدم ./config_linux
. بالنسبة لنظام التشغيل Windows، استخدم ./config_win
. بالنسبة لنظام التشغيل Mac/OS X، استخدم ./config_mac
.-jar ./plugins/...
ليطابق الإصدار الذي قمت بإنشائه أو تنزيله.-data
: المسار المطلق إلى دليل البيانات الخاص بك. يقوم Eclipse.jdt.ls بتخزين معلومات محددة لمساحة العمل فيه. يجب أن يكون هذا فريدًا لكل مساحة عمل/مشروع. إذا كنت تريد تصحيح أخطاء Eclipse.jdt.ls نفسها، أضف -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1044
مباشرة بعد java
وتأكد من عدم تشغيل أي شيء آخر على المنفذ 1044. إذا كنت تريد ذلك قم بتصحيح الأخطاء من بداية التنفيذ، وقم بتغيير suspend=n
إلى suspend=y
حتى ينتظر JVM مصحح الأخطاء الخاص بك قبل بدء تشغيل الخادم.
يتوفر أيضًا برنامج نصي مجمّع Python يجعل بدء تشغيل Eclipse.jdt.ls أكثر ملاءمة (لا حاجة للتوفيق مع خيارات Java وما إلى ذلك). يتم وصف نموذج الاستخدام أدناه. يتطلب البرنامج النصي بيثون 3.9.
./org.eclipse.jdt.ls.product/target/repository/bin/jdtls
-configuration ~ /.cache/jdtls
-data /path/to/data
سيتم تعيين جميع خيارات Java المعروضة بواسطة البرنامج النصي المجمع. من فضلك، لاحظ أن خيارات -configuration
تشير إلى مجلد المستخدم لضمان بقاء مجلد التكوين في org.eclipse.jdt.ls.product/target/repository/config_*
كما هو.
انظر المساهمة
يدعم خادم لغة Java المقابس والأنابيب المسماة والتدفقات القياسية لعملية الخادم للتواصل مع العميل. يمكن للعميل توصيل طرق الاتصال المفضلة لديه عن طريق إعداد متغيرات البيئة أو بدلاً من ذلك استخدام خصائص النظام (على سبيل المثال -DCLIENT_PORT=...
)
لاستخدام مأخذ توصيل عادي ، قم بتعيين متغيرات البيئة أو خصائص النظام التالية قبل بدء تشغيل الخادم:
CLIENT_PORT
: منفذ المقبس الذي سيتم الاتصال بهCLIENT_HOST
: اسم المضيف الذي سيتم الاتصال به. إذا لم يتم تعيينه، فسيتم تعيينه افتراضيًا على localhost
.سيتم استخدام الاتصال للداخل والإخراج.
لاستخدام التدفقات القياسية (stdin، stdout) لعملية الخادم، لا تقم بتعيين أي من متغيرات البيئة المذكورة أعلاه وسيعود الخادم إلى التدفقات القياسية.
بالنسبة للمقبس والأنابيب المسماة، من المتوقع أن يقوم العميل بإنشاء الاتصالات وانتظار اتصال الخادم.
يحتوي هذا المستودع على تنفيذ الخادم فقط. فيما يلي بعض العملاء المعروفين الذين يستخدمون هذا الخادم:
ينشر خادم CI الخاص بنا ثنائيات الخادم على http://download.Eclipse.org/jdtls/snapshots/.
تتوفر مستودعات P2 ضمن http://download.Eclipse.org/jdtls/snapshots/repository/.
تتوفر إصدارات Milestone ضمن http://download.Eclipse.org/jdtls/milestones/.
EPL 2.0، راجع ملف الترخيص.