2012-06-15 12 views
9

मैं उपयोग कर रहा हूँ:PathMatchingResourcePatternResolver (वसंत) प्रयोग

PathMatchingResourcePatternResolver rr = new ...; 
rr.getResources("classpath*:**/*.class") 

classpath कि निर्देशिका और जार से बना है से सभी वर्गों के लिए। कॉल निर्देशिकाओं से केवल कक्षाएं देता है; जेएआर फाइलों को नजरअंदाज कर दिया जाता है। निम्नलिखित कॉल JARs से कक्षाएं लौटाती है:

rr.getResources("classpath*:org/**/*.class") 

क्या बेस पैकेज नाम जानने के बिना सभी कक्षाएं प्राप्त करना संभव है?

उत्तर

9

यह documentation में बताया गया है कि जब "classpath *:" का उपयोग उपसर्ग चींटी शैली पैटर्न कम से कम एक रूट निर्देशिका से पहले पैटर्न शुरू होता है उल्लेख किए जाने की आवश्यकता के साथ-साथ और यह कि JDK के ClassLoader.getResources में एक सीमा (है) तरीका। यदि रूट निर्देशिका का उल्लेख नहीं किया गया है तो यह केवल विस्तारित निर्देशिकाओं की जड़ से फ़ाइलों को पुनर्प्राप्त करता है।

तो दुर्भाग्यवश आप यहां भाग्य से बाहर हैं।