मैं शैल से एक एसबीटी ऐप कैसे चला सकता हूं, ताकि मैं अपना ऐप सामान्य कमांड लाइन प्रोग्राम के रूप में चला सकूं (जैसे कि scala
के माध्यम से सीधे चलाएं लेकिन बिना किसी विशाल वर्गपथ को स्थापित किए)?मैं सामान्य कमांड लाइन प्रोग्राम के रूप में खोल से एक एसबीटी मुख्य वर्ग कैसे चला सकता हूं?
मैं जानता हूँ कि मैं कर सकते हैं:
echo hello | sbt 'run-main com.foo.MyMain3 arg1 arg2' > out.txt
लेकिन इस (1) हमेशा के लिए ले जाता है शुरू करने के लिए है क्योंकि यह एसबीटी शुरू होता है, (2) सभी stdout और stderr का कारण बनता है stdout के लिए जाने के लिए, और (3) सभी का कारण बनता है आउटपुट को लॉगर [जानकारी] या [त्रुटि] से सजाया जाना चाहिए।
मैंने https://github.com/harrah/xsbt/wiki/Launcher पर देखा लेकिन यह बहुत भारी लगता है, क्योंकि यह निर्भरता डाउनलोड करता है और एक नया वातावरण स्थापित करता है और क्या नहीं। मैं सिर्फ इस ऐप को अपने मौजूदा विकास पर्यावरण में चलाने के लिए चाहता हूं।
अब तक मैंने क्लासपाथ बनाने के लिए अपनी खुद की लिपि को एक साथ जोड़ दिया है, और आप कुछ अन्य चीजें भी कर सकते हैं जैसे modify your project file to get sbt to print the raw classpath, लेकिन मुझे लगता है कि एक बेहतर तरीका होना चाहिए।
जैसे 'एमवीएन निष्पादन: जावा' या 'एमवीएन एपसेम्बलर: इकट्ठा करें – sourcedelica