के बाद टास्क लागू मैं स्वचालित रूप से एक कार्य को निष्पादित करने में सक्षम हूँ के साथ संकलन से पहले:एसबीटी संकलित
compile in Compile <<= (compile in Compile).dependsOn(myTask)
मैं एक ही लेकिन के बाद संकलन करना कैसे करते हैं?
मैं जानता हूँ कि मैं कर सकते हैं:
compile in Compile <<= (compile in Compile) map{x=>
// post-compile work
doFoo()
x
}
मनमाना स्काला कोड निष्पादित करने के लिए, लेकिन मैं स्वचालित रूप से लक्षित कार्य ही निष्पादित करने के लिए जब एक संकलन घटना होती है
की तरह कुछ कर की जरूरत है:
val foo = TaskKey[Unit]("foo", "...")
val fooTask = foo <<= scalaInstance map {si =>
...
} dependsOn(compile in Compile)
काम करता है अगर मैं sbt> प्रॉम्प्ट से "foo" टाइप करता हूं; यानी संकलन के बाद कार्य निष्पादित किया जाता है, लेकिन लक्ष्य संकलन कार्य में स्वयं को हुक करना है, इसलिए जब भी कोई संकलन होता है, तो फ़्यू कार्य स्वचालित रूप से संकलन पूर्ण होने के बाद बुलाया जाता है।
क्या यह संभव है, या क्या मैं अंतर्निहित संकलन कार्य में शामिल होने के गलत तरीके से चीजों के बारे में जा रहा हूं?
क्या आप उपयोग के मामले की व्याख्या कर सकते हैं? –
@ मार्क हाराह, प्ले की एक सीमा है जहां उप परियोजनाओं के लिए जावास्क्रिप्ट रिवर्स रूटिंग केवल रनटाइम पर उत्पन्न की जा सकती है। मुझे संकलन समय पर स्थिर फ़ाइल के रूप में जेनरेट किए गए मार्गों की आवश्यकता है, जो मैंने पूरा किया है, कार्य में संकलन ऑपरेशन के रूप में कार्य में हुकिंग के अपवाद के साथ (यानी मुझे पहले आवेदन को संकलित करने की आवश्यकता है, अन्यथा नए मार्गों के लिए जिम्मेदार नहीं होगा मार्ग निर्माण कार्य में)। – virtualeyes
क्या ये फ़ाइलें जेनरेट की जा रही हैं संसाधनों के रूप में? –