java - एक जावा प्रोजेक्ट में संसाधनों(चित्र, ध्वनि बिट्स आदि) को एम्बेड करना, तो उन संसाधनों का उपयोग करें



eclipse resources (1)

बस उन संसाधनों को स्रोत / पैकेज संरचना में रखें और ClassLoader#getResource() या getResourceAsStream() का उपयोग उन्हें पूर्ण योग्य पैकेज पथ द्वारा URL या InputStream को getResourceAsStream() से प्राप्त करने के लिए करें।

ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
InputStream input = classLoader.getResourceAsStream("/image.gif");
// ...

या यदि यह वर्तमान पैकेज के समान पैकेज में है, तो आप इसे निम्नानुसार प्राप्त कर सकते हैं:

InputStream input = getClass().getResourceAsStream("image.gif");

एक साइड प्रश्न के रूप में, मैं एक्लिप्स को प्रोजेक्ट को एक्जीक्यूटेबल के रूप में कैसे प्राप्त कर सकता हूं ताकि इसे लॉन्च किया जा सके।

राइटक्लिक जावा प्रोजेक्ट> एक्सपोर्ट> रननाबल जेआर फाइल

मैंने एक जावा प्रोजेक्ट (ईक्लिप्स v3.6.0 का उपयोग करके) में एक संसाधन को एम्बेड करने की एक विधि की खोज की है, फिर एक एम्बेडेड संसाधन का उपयोग नियंत्रण में (उदाहरण के लिए, JLabel )। मैंने फ़ाइल सिस्टम से संसाधनों को संदर्भित करने के तरीकों को देखा है। एक बार परियोजना का विकास हो जाने के बाद मैं आवेदन को निष्पादन योग्य के रूप में प्रकाशित करना चाहता हूं। यह ध्यान दिया जाना चाहिए कि इन एक्जिक्यूटरों को विंडोज, * न्यूक्स, और लिनक्स प्लेटफार्मों पर तैनात / लॉन्च किया जाएगा।

मुझे पता है कि यह दृश्य स्टूडियो दुनिया में किया जा सकता है, लेकिन मैं जावा / एल्प्से आईडीई में यह कैसे करना है यह बहुत अपरिचित हूँ। एक तरफ सवाल के रूप में, मैं एक्लिप्स को प्रोजेक्ट को एक्जीक्यूटेबल के रूप में कैसे प्राप्त कर सकता हूं ताकि इसे लॉन्च किया जा सके?

कोई भी मदद बहुत ही सराहनीय होगी।

निशान

अद्यतन 1:

बलूस की प्रतिक्रिया के आधार पर, मैं अपनी समस्या को सुलझाने वाला कोड साझा करना चाहता था मेरी कक्षाएं " Viking.Test " के पैकेज में हैं और फिर मैंने " Viking.Test.Resources " पैकेज के अंतर्गत छवि फ़ाइल को रखा है। परियोजना में छवि को आयात करने के लिए यह सब ग्रहण के भीतर किया जाता है

  1. मैंने आयात स्रोत के लिए प्रोजेक्ट -> आयात -> सामान्य / फ़ाइल सिस्टम पर राइट-क्लिक करके छवि आयात की है
  2. जिस फ़ोल्डर में आयात करने के लिए छवि थी उसे चुना गया
  3. 'इनटूस्टर' पैरामीटर के लिए चयनित " Project/src/Viking/Test/Resources "
  4. किसी भी विकल्प को नहीं बदला और "समाप्त" क्लिक किया

स्रोत फ़ाइल में मैंने छवि को JLabel ( LblLogo ) में डालने के लिए निम्न कोड जोड़ा है

try
{
  ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
  InputStream input = classLoader.getResourceAsStream(
    "Viking/Test/Resources/MyImage.jpg");
  Image logo = ImageIO.read(input);
  LblLogo = new JLabel( new ImageIcon( logo ) );
  LblLogo.setBounds(20, 11, 210, 93);
  getContentPane().add(LblLogo);
}
catch ( IOException e ) {  }




imagesource