मैंने दोनों की कोशिश की और अंत में मैं संकलन के लिए सीधे एसबीटी पसंद करता हूं।
विपक्ष? मैं वास्तव में संकलन त्रुटियों के माध्यम से क्लिक करने और सीधे कोड को ठीक करने में सक्षम होने से चूक जाता हूं, लेकिन ... एसबीटी में संकलन करना बहुत तेज़ है।
आइडिया स्कैला प्लगइन का रात का निर्माण गुणवत्ता/प्रदर्शन में भिन्न हो सकता है, लेकिन यह हाल ही में बेहतर और बेहतर हो रहा है। स्कैला प्लगइन अब कई त्रुटियों को ध्वजांकित कर सकता है इससे पहले कि मुझे पकड़ने के लिए संकलन करना पड़े। (उदाहरण के लिए, मैं रात में 0.4.6 9 3 का निर्माण कर रहा हूं और नई विधि निरीक्षण पहले से ही उपयोगी हो चुकी है।)
कमांड लाइन पर एसबीटी के साथ जीवन के लिए मेरी सलाह: एसबीटी शुरू करें और इसे लंबे समय तक चलने दें लोड होने वाली चीज़ों और जेआईटी-एड का लाभ उठाने के लिए जितना संभव हो सके।
एसबीटी बाएं दौड़ अंततः खत्म हो जाएगी लेकिन इसे अपने एसबीटी रैपर में अधिक स्मृति देकर आप इसे शायद ही कभी ही कर सकते हैं।
यहां एसबीटी लॉन्च रैपर है जो मेरे लिए काम करता है।
java -Xms512M -Xmx1500M -XX:MaxPermSize=512m -jar `dirname $0`/sbt-launch.jar "[email protected]"
मेरे एसबीटी 0.7 के साथ सबसे बड़ी समस्या यह है कि यह अक्सर वापस चला जाता है और फ़ाइलों के महान swathes है कि केवल कोड मैं वास्तव में बदल रहा था करने के लिए स्पर्शरेखा लगते recompiles है। (यहां तक कि, आइडिया और एफएससी से अभी भी तेज़!)
अच्छी खबर: एसबीटी 0.9 में कुछ बढ़िया संकलन सुधार हैं। दुर्भाग्यवश, 0.7 से 0.9 तक माइग्रेशन पथ अभी भी शुरुआती दिनों में है। यदि आप रुचि रखते हैं तो NEScala में मार्क हाराह की प्रस्तुति http://www.nescala.org/2011/ पर ऑनलाइन है।
उपयोगी प्लगइन्स
- http://github.com/mpeltonen/sbt-idea - आसानी से बना सकते हैं और अपने एसबीटी परियोजना
- http://github.com/orfjackal/idea-sbt-plugin के साथ सिंक में अपने आइडिया परियोजना रखना - आप आइडिया के भीतर से एसबीटी के लिए चलाने के प्रोफाइल बनाने की सुविधा देता है (मैं की तुलना में इस धीमी पाया पिछले अक्टूबर में कमांड लाइन पर एसबीटी चल रहा है - लेकिन मुझे लगता है कि ऑर्फजैकल अभी भी विकसित हो रहा है इसलिए मुझे इसे एक और शॉट देना चाहिए)
http://stackoverflow.com/ques में कुछ (आंशिक) उत्तर tions/3606591/why-does-intellij-idea-compile-scala-so-धीरे – VonC