2012-10-23 23 views
6

पर बाहर निकलें मैं निरंतर एकीकरण (बांस) के लिए एसबीटी का उपयोग कर रहा हूं। मैं जांचना चाहता हूं कि सभी पर्यावरण चर सेट हैं या एक वर्णनात्मक त्रुटि संदेश प्राप्त करें। इसके बजायनिरंतर एकीकरण के लिए एसबीटी: प्रिंट स्टैकट्रैक और त्रुटि

def env(n: String) = Option(System.getenv(n)).getOrElse(throw new RuntimeException("Undefined required environment variable " + n)) 

val mySetting = env("REQUIRED_ENV_VAR") + "..." 

, मैं

[error] java.lang.ExceptionInInitializerError 
[error] Use 'last' for the full log. 
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? q 

दो प्रश्न मिलते हैं: मैं निम्नलिखित दृष्टिकोण का उपयोग

  1. का उपयोग कैसे करें 'अंतिम' की आवश्यकता के बिना पूर्ण स्टैकट्रेस प्राप्त करने के लिए (सरल नहीं कर सकते बांस पर करो)?
  2. पुन: प्रयास करने के बजाय प्रोजेक्ट लोडिंग विफल होने पर एसबीटी से बाहर निकलने के लिए कैसे कहें? यदि इनपुट धारा "बंद" के साथ (जैसे एक hacky) चाल हो जाएगा
+1

[* कैसे पूर्ण स्टैकट्रेस * पाने के लिए] (https://groups.google.com/forum/#!msg/simple-build-tool/Oubyb6LlZA8/6ihYrzRyTKMJ) –

+0

धन्यवाद, लेकिन ऐसा नहीं ' बिल्ड ऑब्जेक्ट प्रारंभिकरण के दौरान कोई त्रुटि उत्पन्न होने पर कार्य नहीं करता है। मुझे मूल पोस्ट में वही त्रुटि मिलती है। – nau

+1

[इंटरैक्टिव प्रॉम्प्ट को कैसे अक्षम करें] (http://code.google.com/p/simple-build-tool/issues/detail?id=80) – 4e6

उत्तर

7

एसबीटी इंटरैक्टिव मोड सक्षम नहीं होगा:

cat /dev/null | sbt taskname 

या यदि आप पाइप का उपयोग करने के लिए इस तरह एक खोल स्क्रिप्ट बनाने में सक्षम नहीं हैं :

#!/bin/sh 
sbt "[email protected]" < /dev/null