جافا في الكسوف: أين أضع الملفات على الملفات التي أريد تحميل باستخدام getResource؟ (مثل الصور لImageIcon)

StackOverflow https://stackoverflow.com/questions/270197

سؤال

وأنا أعلم أن الملف يجب أن يكون فيها getClass () عبارة. getResource (اسم الملف) يمكن العثور عليه، ولكن لا أعرف أين هو.

وأنا مهتم في كل مكان وضع الملفات على الملفات نفسها، وكيفية التوجه نحو استخدام وظيفة الكسوف لإعداد الموارد.

هل كانت مفيدة؟

المحلول

لالكسوف، وعادة كل ما عليك القيام به هو إعداد مجلد في مكان ما داخل دليل التعليمات البرمجية المصدر. على سبيل المثال، إذا كان الدليل الذي يحتوي المصدر هو /src ثم يمكنك إنشاء مجلد /src/resources لوضع الصور الخاصة بك / الملفات في، ثم في صفك كنت تفعل getResource("/resources/image.png") لاسترجاعها.

ويمكنك أيضا وضع صورة / ملف داخل المجلد نفس / حزمة كطبقة تحاول الوصول إليه إذا كنت ترغب (على سبيل المثال: مكان image.png في حزمة com.mycompany مع الطبقة com.mycompany.Foo التي تحتاج إلى الوصول إليه والدعوة getResource("image.png"))، ولكني وجدت أنه من الأسهل للحفاظ على الموارد مثل الصور وغيرها من الملفات في دليل خاص بهم خارج المجلدات الدرجة - انهم مجرد أسهل لإدارة هذا النحو

في الكسوف، وكلما كنت تفعل بناء، سيتم نسخ الملفات داخل الدليل هذه الموارد أكثر في دليل البناء الخاص جنبا إلى جنب مع فئات المترجمة.

ومن المهم أن نلاحظ أنه إذا كان لديك "بناء تلقائيا" قيد التشغيل في الكسوف (كما يفعل معظم الناس) أي موارد في هذا الدليل أن الحصول على تغيير خارج الكسوف (أي قمت بتحرير صورة باستخدام أداة تحرير الصور) أن IDE قد لا دائما الكشف عن هذا التغيير. تفعل عادة التحديث في مجلد المشروع وتأكد من أن الملف يتم تحديثها في البناء في هذه الحالات.

نصائح أخرى

ويمكنك إما وضعها في مجلد SRC إلى جانب الفصول الدراسية، أو يمكنك إنشاء مجلد مصدر جديد لهذا الغرض (وعادة ما تسمى <م> الموارد )، على الرغم من أنك سوف العثور عليهم مماثل من التعليمات البرمجية.

وبعد ذلك تحصل عليهم باستخدام getResource("/com/x/y/foo.png").

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