2012-12-03 19 views
11

मैंने स्कैला/मेवेन/एक्लिप्स का उपयोग करने के लिए एक प्रोजेक्ट कॉन्फ़िगर किया है। क्योंकि मैं निर्माण के रास्ते पर एक स्केला पुस्तकालय की जरूरत है और scalatest भी अपने स्वयं के स्केला लाइब्रेरी का उपयोग करता मैं इस चेतावनी प्राप्त करते हैं:मैवेन/ग्रहण/स्कैला के लिए केवल एक स्केल लाइब्रेरी का उपयोग कैसे करें

More than one scala library found in the build path, all with compatible versions. This is not an optimal configuration, try to limit to one scala library in the build path.

मुझे नहीं लगता कि जैसा कि मैंने दोनों पुस्तकालयों की जरूरत है मैं इस चेतावनी को निकालने कर सकते हैं - Maven के लिए एक, ग्रहण के लिए दूसरा। ऐसा कोई समस्या नहीं प्रतीत होता है, तो क्या मुझे इसे स्वीकार करना होगा? क्या कोई वैकल्पिक कॉन्फ़िगरेशन है जो मेवेन & ग्रहण के लिए केवल एक स्कैला लाइब्रेरी का उपयोग करता है?

अगर मैं इस परियोजना से स्केला पुस्तकालय को दूर मैं त्रुटि प्राप्त:

Cannot find Scala library on the classpath. Verify your build path!

किसी कारण ग्रहण स्केला पुस्तकालय की आवश्यकता का निर्माण पथ पर होने की भले ही यह पहले से ही एक Maven निर्भरता के रूप में उपलब्ध है के लिए।

+0

यह संभव हो सकता है कि इस परियोजना को आप लोड classpath, जो स्केला पुस्तकालय शामिल में कई जार में शामिल है। (थोड़ी देर पहले मेरे साथ हुआ, इस सटीक संदेश को देखा ... जार समेत सावधानी से, यानी "पतली" जार का उपयोग करना और स्टैंड-अलोन "वसा" जारों ने समस्या हल नहीं की ...) –

+0

आपको अलग क्यों चाहिए मेवेन और ग्रहण के बीच स्कैला पुस्तकालय? –

+1

यदि मैवेन केवल एक स्केल-लाइब्रेरी के साथ ठीक है, तो आपको कोई समस्या नहीं है। मैवेन ग्रहण प्लगइन का उपयोग करें 'एमवीएन ग्रहण: ग्रहण' निश्चित परियोजना सेटअप के लिए ग्रहण परियोजना फ़ाइलों को उत्पन्न करने के लिए। –

उत्तर

10

चिंता करने की कोई बात नहीं है। ग्रहण आपको चेतावनी देता है कि आपके क्लासपाथ पर आपके पास scala-library.jar एस हैं, लेकिन जब तक वे एक ही संस्करण हैं, इससे कोई फर्क नहीं पड़ता।

यदि उनमें से एक अलग हो गया है (उदाहरण के लिए, अपने pom फ़ाइल में स्कैला संस्करण संख्या को बंप करके), आप परेशानी में होंगे: क्लासपाथ ऑर्डर के आधार पर, आईडीई कक्षाओं को एक या दूसरे से उठाएगा, और कमांड लाइन पर निर्माण करते समय आपको अलग-अलग परिणाम मिल सकते हैं।

अपने सेटअप पर वापस आ रहा है, आप

  • अपने ग्रहण परियोजनाओं से Scala Library classpath कंटेनर को दूर कर सकता है, बस जार कि maven कहते हैं छोड़कर।
  • चेतावनी को अनदेखा
+1

कृपया संपादित करें –

+1

क्या आप '2.0.2' का उपयोग कर रहे हैं? आप शायद [इस मुद्दे] का सामना कर रहे हैं (https://www.assembla.com/spaces/scala-ide/tickets/1000987#/activity/ticket :), 2.1.0-मील का पत्थर 2 में तय किया गया है। –

0

यहां अनुमान लगाते हुए, क्या आप एक्लाइप्स इंडिगो का उपयोग स्कैला 2.9 और संबंधित स्कैला प्लगइन के साथ पूर्व-स्थापित कर रहे हैं? यदि यही कारण है कि आपको उस पुस्तकालय का उपयोग करने की आवश्यकता है, तो शायद ग्रहण जूनो का उपयोग करने पर विचार करें? यही वह है जो मैं उपयोग करता हूं और यह मील का पत्थर दोनों के साथ काफी अच्छा काम करता है और रात का निर्माण

+0

मैंने इंडिगो पर अलग-अलग स्केल प्लगइन 2.9 स्थापित किया। मैं जूनो का उपयोग नहीं कर सकता। –

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

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