मेरे पास निम्न लेआउट वाला एक प्रोजेक्ट है:
मेरा लक्ष्य था कि एमवीएन परियोजना लिब डीआईआर को संभावित लिब्स के लिए एक अतिरिक्त स्थान के रूप में देख रहा था जो नहीं होगा उदाहरण के लिए जे-टेक्स्ट-utils.jar जैसे मेवेन रिपॉजिटरी में पाया गया। इसलिए मैंने इसे pom.xml
& lt; repositories & gt; में जोड़ा था। & LT; भंडार & gt; & LT; आईडी & gt; lib & lt; / आईडी & gt; & LT; यूआरएल & gt; file: // $ {project.basedir} / lib & lt; / यूआरएल & gt; & Lt; / भंडार & gt; & Lt; / खजाने & gt;
मैंने यहां से विचार लिया:
जब एमवीएन संकलन चल रहा है, तो यह परियोजना फ़ोल्डर में संबंधित लिब्स को खोजने में विफल रहता है।
वहाँ के साथ कुछ भी गलत है?
thx
सेटअप करने में कुछ भी गलत नहीं है एक फाइल आधारित रिपॉजिटरी लेकिन सबसे पहले, आपकी निर्देशिका संरचना को ग्रुपिड / आर्टिफेक्टिड के अनुरूप होना चाहिए। आपको
सेट localrepopath = C: \ path_to_repo_rootdir कॉल mvn install: install-file -Dfile = xyz-1.2.jar -DgroupId = com.foo -DartifactId = xyz -Dversion = 1.2 का उपयोग करना चाहिए - Dpackaging = jar -DocalRepositoryPath =% localrepopath% -DcreateChecksum = true
यह सभी pom.xml, जार फ़ाइलें, इसके अंतर्गत चेकसम फाइलों के साथ निर्देशिका कॉम \ foo \ 1.2 को बनाएगा।
तब आपको अपने स्वयं के प्रोजेक्ट pom.xml में इन नए स्थापित कलाकृतियों के लिए निर्भरता को परिभाषित करने की आवश्यकता है।
यदि आप स्थानीय भंडार सेटअप नहीं करना चाहते हैं और केवल उन्हें संकलित करने के लिए जोड़ना चाहते हैं क्लासपाथ, आप "सिस्टम" स्कोप निर्भरता का उपयोग करने पर विचार कर सकते हैं, लेकिन यह आपकी बिल्ड को पोर्टेबल नहीं बना देगा और सामान्य रूप में निराश हो जाएगा।
Comments
Post a Comment