2011-12-22 20 views
12

की समझ की आवश्यकता है मेरे पास कुछ समस्याएं हैं जो मैंने पहले ही this other question के माध्यम से हल की है। हालांकि, मैं अभी भी मूल कारण के बारे में सोच रहा हूं। मेरे सवालों का इस प्रकार हैं:spring.handlers और spring.schemas

  1. spring.handlers और spring.schemas का उद्देश्य क्या है?

जैसा कि मैं समझता हूं कि यह स्प्रिंग फ्रेमवर्क कहने का एक तरीका है जहां xsd का पता लगाने के लिए ताकि सबकुछ वायर्ड हो और सही ढंग से लोड हो। लेकिन ...

  1. किन परिस्थितियों मैं META-INF फ़ोल्डर के अंतर्गत उन दो फाइलों होना चाहिए के तहत?

  2. ऊपर दिए गए मेरे अन्य प्रश्न में, क्या किसी को पता है कि मुझे मेटा-आईएनएफ के तहत उन दो फाइलों (मेरी सभी निर्भरताओं के आधार पर) बनाने के लिए maven-shade-plugin क्यों जोड़ना पड़ा? दूसरे शब्दों में, रूट कारण क्या था जिसने मुझे मेवेन छाया प्लगइन का उपयोग करना पड़ा?

उत्तर

21

spring.handlers और spring.schemas का उद्देश्य क्या है?

अच्छी तरह से आप कम या ज्यादा यह पता अपने आप के द्वारा पाया, चलो कुछ और जानकारी जोड़ सकते हैं:

कुछ वसंत पुस्तकालयों एक META-INF निर्देशिका

META-INF/वसंत के अंदर एक spring.schemas and a spring.handlers file होते हैं। स्कीमा

  • फिर से नक्शे (*) पुस्तकालय के अंदर एक XSD को schemalocation
  • (सार) केवल फिर से मैप किया संस्करण इस पुस्तकालय द्वारा समर्थित हैं

META-INF/spring.handlers

  • विशिष्ट नामस्थान
  • नाम स्थान हैंडलर वर्ग प्रदान करता है के लिए नाम स्थान हैंडलर वर्गों प्रदान करता है पार्सर तर्क वसंत बैच सेम पार्स करने के लिए, काम, कदम, आदि
012 की तरह

(*) वास्तविक फिर से मानचित्रण वसंत आवेदन संदर्भ


किन परिस्थितियों मैं META-INF फ़ोल्डर के अंतर्गत उन दो फाइलों होना चाहिए के तहत के निर्माण के दौरान क्या होता है?

सामान्य रूप से फ़ाइलें आप का उपयोग वसंत पुस्तकालय जार के अंदर हैं, लेकिन आप खुद नाम स्थान सेम पार्स लागू करने के लिए तंत्र का उपयोग कर सकते हैं, तो आप अपनी फ़ाइलों

होता

मेरे दूसरे प्रश्न में ऊपर से जुड़ा हुआ है, क्या किसी को पता है कि मुझे मेटा-आईएनएफ के तहत उन दो फाइलों (मेरी सभी निर्भरताओं के आधार पर) बनाने के लिए मेवेन-शेड-प्लगइन जोड़ने के लिए क्यों जोड़ना पड़ा? दूसरे शब्दों में, रूट CAUSE क्या था जिसने मुझे मेवेन छाया प्लगइन का उपयोग करना पड़ा?

अगर आप अपने वसंत विन्यास में एक स्प्रिंग नाम स्थान का उपयोग करें, आप उपयुक्त फ़ाइलें जरूरत

समस्या पैदा होती है जब आप एक जावा आवेदन चलाना चाहते हैं:

  • एक मुख्य वर्ग या तो साथ
    • वसंत पुस्तकालयों classpath
    • पर होने की जरूरत है या सब एक जार, ख के लिए है जो में विलय कर दिया गया है classpath (*)
  • युद्ध/कान सर्वर अनुप्रयोग के रूप में, वसंत libaries, classpath पर होने की जरूरत है सामान्य रूप से युद्ध

मैं लगता है कि आप के साथ mainclass शुरू नहीं किया अंदर ई पूरा classpath और मैं अद्यतन मेरी answer अपने पहले प्रश्न के लिए भी

(*) यदि आप एक जार में सभी मर्ज करते हैं, आप यह सुनिश्चित करना है, कि सभी spring.schemas/spring.handlers फ़ाइलों की सामग्री को एक में मिला दिया जाता है spring.schemas और एक spring.handlers फ़ाइल, यह answer for a configuration with maven to create an all-in-one.jar

देखें
+0

बहुत बहुत धन्यवाद, यही वह है जिसे मैं ढूंढ रहा था। – Viriato

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^