हमारे कोड में हमारे पास कई मॉडल स्प्रिंग जेपीए रिपोजिटरीज हैं, जो हमारे प्रत्येक मॉडल वर्गों में से एक हैं। वे के रूप में परिभाषित कर रहे हैं (जहां <Name>
हमारे औसत वर्ग का नाम है):इंटेलिजे "ऑटोवायर नहीं कर सका।" निरीक्षण, "[...] वसंत जेपीए भंडारों के लिए एक से अधिक बीन"
@Repository
public interface <Name>Repository implements JpaRepository<Name, Long> {
// …
}
हम javax
से @Inject
एनोटेशन का उपयोग कर हमारे सेम में उन्हें इंजेक्षन:
@Inject
public void set<Name>Repository(<Name>Repository <name>Repo) {
this.<name>Repo = <name>Repo;
}
private <Name>Repository <name>Repo;
मुद्दा यह है कि इंटेलीजे को रेखांकित करता है
autowire नहीं कर सका: पाठ के साथ एक त्रुटि के रूप में
set<Name>Repository
समारोह में<name>Repo
। 'रिपोजिटरी' प्रकार के एक से अधिक बीन हैं। बीन्स: रेपो, रेपो।
यह निरीक्षण के साथ केवल एक समस्या है। हमारे ऐप का संकलन और चलाना ठीक काम करता है, लेकिन आईजे उपयोग में निरीक्षण करने के प्रयास में यह एक बड़ी समस्या है। किसी के पास इंटेलिजे को व्यवहार करने के तरीके के बारे में सुझाव हैं?
संदर्भ के लिए, हम हाइबरनेट को हमारे जेपीए प्रदाता के रूप में उपयोग कर रहे हैं, और डाटा स्रोत दोनों डेटाबेस और पर्सिस्टेंस टूल विंडो में स्थापित है।
क्या इंटेलिजे आपको बताता है कि कौन से बीन्स इंजेक्शन से मेल खाते हैं? – geoand
इसके अलावा एक अलग नोट पर, आपको '@ रिपोजिटरी 'एनोटेशन की आवश्यकता नहीं है। वसंत डेटा जेपीए स्वचालित रूप से बीन बना देगा यदि यह ठीक से कॉन्फ़िगर किया गया है – geoand
हां, @geoand, मिलान करने वाले बीन्स ' रेपो 'और' रेपो' हैं। सबसे उपयोगी नहीं है। केवल एक चीज जिसे मैं सोच सकता था वह था कि आईजे ने '@ रिपोजिटरी' एनोटेशन और वसंत कॉन्फ़िगरेशन दोनों को उठाया? –