سؤال

لقد قمت للتو بتثبيت Ubuntu 8.04 وأنا أتلقى دورة تدريبية في Java لذا فكرت في سبب عدم تثبيت IDE أثناء تثبيته.لذلك اخترت بيئة التطوير المتكاملة (IDE) المفضلة لدي، Eclipse، وقمت بإنشاء برنامج بسيط جدًا، Hello World، للتأكد من أن كل شيء يعمل بسلاسة.عندما أستخدم الماسح الضوئي لإدخال المستخدم، أحصل على خطأ غريب جدًا:

رمز بلدي:

import java.util.Scanner;

اختبار الفئة {public static void main (string [] args) {scanner sc = new scanner (system.in) ؛System.out.println("مرحبا");}}

الإخراج:

Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
    Scanner cannot be resolved to a type
    Scanner cannot be resolved to a type

   at test.main(test.java:5)
هل كانت مفيدة؟

المحلول

فئة الماسح الضوئي جديدة في Java 5.لا أعرف ما هي بيئة Java الافتراضية الخاصة بـ Hardy، ولكنها ليست بيئة Sun وبالتالي قد تكون قديمة.

أوصي بتثبيت الحزمة sun-java6-jdk للحصول على أحدث إصدار، ثم إخبار Eclipse باستخدامها.

نصائح أخرى

إذا كنت تستخدم إصدار Java قبل 1.5، فإن java.util.Scanner غير موجود.

ما هو إصدار JDK الذي تم إعداد مشروع Eclipse الخاص بك لاستخدامه؟

قم بإلقاء نظرة على Project، Properties، Java Build Path - ابحث عن إدخال "JRE System Library"، الذي يجب أن يحتوي على رقم إصدار بجواره.

من الممكن أيضًا أنه على الرغم من أن لديك JDK 1.5 أو أعلى، إلا أن المشروع يحتوي على بعض الإعدادات المحددة التي تطلب منه التحويل 1.4.يمكنك اختبار ذلك عبر Project >> Properties >> Java Compiler والتأكد من تعيين "مستوى توافق المترجم" على 1.5 أو أعلى.

أعرف، لقد مر وقت طويل منذ أن تم نشر السؤال.لكن الحل قد يظل موضع اهتمام أي شخص هناك.انها في الواقع بسيطة جدا ...

ضمن Ubuntu، تحتاج إلى تعيين مترجم Java "javac" لاستخدام jdk الخاص بـ sun بدلاً من أي بديل آخر.الفرق في بعض الإجابات المنشورة حتى الآن هو أنني أتحدث عن javac وليس java.للقيام بذلك، قم بإطلاق قذيفة وقم بما يلي:

  1. كجذر أو Sudo اكتب في سطر الأوامر:

# update-alternatives --config javac

  1. حدد الرقم الذي يشير إلى jdk الخاص بـ sun، واكتب هذا الرقم، ثم اضغط على "ENTER".

  2. انت انتهيت!من الآن فصاعدا يمكنك الاستمتاع بـjava.util.Scanner ضمن Ubuntu.

System.out.println("Say thank you, Mr."); Scanner scanner = java.util.Scanner(System.in); String thanks = scanner.next(); System.out.println("Your welcome.");

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top