2012-05-02 14 views
8

मुझे अपने स्केलैडोक से जिथब पर स्रोतों से लिंक करने की आवश्यकता है। मैं एसबीटी के doc कार्य के साथ उन दस्तावेज़ों का निर्माण करता हूं।स्केलैडोक से स्रोतों को जोड़ना?

दो समस्याएं हैं - सबसे पहले, मुझे अपने .scala फ़ाइलों के लिए कई नेस्टेड खाली निर्देशिकाएं बनाना पसंद नहीं है, इसलिए मैं आमतौर पर उन्हें के बजाय src/main/scala/org.rogach.scallop में पैक करता हूं। क्या निर्देशिका को विभाजित किए बिना दस्तावेज़ों के लिंक बनाने का कोई तरीका है?

दूसरा, जब मैं अपने build.sbt में इस लाइन डाल:

scalacOptions in (Compile, doc) ++= 
    Opts.doc.sourceUrl("https://raw.github.com/Rogach/scallop/master/src/main/scala/") 

डॉक्स सूत्रों के लिंक होते हैं, लेकिन उन सभी लिंक बस स्रोत जड़ यूआरएल को इंगित, नहीं फ़ाइलों खुद को। मैं क्या गलत कर रहा हूं?

उत्तर

7
scaladoc help के उत्पादन से

: (। हाँ कि यूरो प्रतीक है)

-doc-source-url <url>  A URL pattern used to build links to template 
          sources; use variables, for example: 
           €{TPL_NAME} ('Seq'), 
           €{TPL_OWNER} ('scala.collection'), 
           €{FILE_PATH} ('scala/collection/Seq') 

तरह निम्नलिखित sourceUrl लिए एक तर्क के रूप में कार्य करना चाहिए अगर अपने स्रोतों के सभी एक में परिभाषित कर रहे हैं पैकेज:

https://raw.github.com/Rogach/scallop/master/src/main/scala/€{TPL_OWNER}.€{TPL_NAME}.scala 
+0

यह लगभग सभी वर्गों के लिए काम करता है, जिनके नाम परिभाषित किए गए फाइलों के नाम के बराबर हैं। लेकिन चूंकि मैंने एक ही फाइल में कई कक्षाएं रखी हैं, यह ब्रेक :( – Rogach

+0

मैं FILE_PATH का उपयोग करने और अपनी मशीन पर 'sed' अभिव्यक्ति के साथ प्रोजेक्ट निर्देशिका के उपसर्ग को बदलने के लिए बस गया हूं। आपकी मदद के लिए धन्यवाद! – Rogach

+2

हां, मैंने नहीं किया' टी सुझाव देता है कि क्योंकि सही तरीके से काम करना मुश्किल है। https://issues.scala-lang.org/browse/SI-5763 भी देखें। –