2015-02-27 8 views
9

मैंने पाया समाधान किया जा रहा कदम आम तौर पर इस तरह के इसएसबीटी के संकलन चरण में 'हलचल' इतनी धीमी क्यों है?

[info] Resolving org.sonatype.oss#oss-parent;7 ... 

के रूप में जब मैं sbt compile चलाने लंबा समय लगता है, किसी को भी क्या हल करने वास्तव में मतलब है के बारे में विचारों है? और यह जरूरी क्यों है?

उत्तर

8

यह तब होता है जब ivy (निर्भरता प्रबंधन के लिए कौन सा एसबीटी उपयोग करता है) सभी निर्भरताओं और पारगमन निर्भरताओं को समझने के लिए प्रोजेक्ट के निर्भरता ग्राफ को देखता है, और उन दोनों के बीच किसी भी विवाद को हल करता है, उदाहरण के लिए, दो निर्भरता विभिन्न संस्करणों पर निर्भर हो सकती है एक ही पुस्तकालय के।

परिणाम कैश किया गया है, लेकिन अगर आप साफ करते हैं तो हटा दिया जाता है, इसलिए अगले ऑपरेशन पर इसे फिर से गणना की जाएगी जिसे निर्भरताओं को जानने की आवश्यकता है।

यह भी संभव है तरीकों से यह इतना है कि एसबीटी परिणाम कैश नहीं कर सकते में अपनी परियोजना को कॉन्फ़िगर करने लेकिन अगर आप स्नैपशॉट पर निर्भर करते हैं और हर के लिए स्नैपशॉट को अद्यतन करने के लिए कॉन्फ़िगर एसबीटी है उन गणना, हर बार जब आप का निर्माण फिर से करना उदाहरण के लिए की जरूरत है निर्माण।

+0

क्या आप जानते हैं कि एसबीटी में इस आउटपुट को अक्षम करना संभव है? तर्क: ट्रैविस जैसे धावकों में निर्माण उत्पादन का लगभग 9 0% "हल हो रहा है ..." (और प्रत्येक "समाधान" बिल्ड लॉग में एक अलग पंक्ति है)। – axel22

+1

पॉल फिलिप्स से एक वैकल्पिक एसबीटी स्टार्टर है जिसमें लॉगिंग आउटपुट के लिए एक ब्लैकलिस्ट है जो काम कर सकती है: https://github.com/paulp/sbt-extras – johanandren

+0

धन्यवाद, यह एक समाधान हो सकता है - इस बीच मुझे ध्वज मिला जो मेरे लिए काम नहीं कर रहा है (अभी तक): https://github.com/sbt/sbt/issues/1791 – axel22

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