2014-07-23 23 views
1

由於需要使用Eclipse和sbt,因此我有一些非標準的構建設置。如何爲scaladoc指定其他源代碼目錄?

我的源代碼位於src/main/scalasrc/com/companyname/[folder1, folder2, etc]目錄中。

如何設置sbt,以便在src/com/companyname下爲這些額外的folderX文件夾生成文檔?

回答

1

TL;博士使用在build.sbt如下:

unmanagedSourceDirectories in Compile += sourceDirectory.value 

inspect是你的朋友。

> inspect doc 
[info] Task: java.io.File 
[info] Description: 
[info] Generates API documentation. 
[info] Provided by: 
[info] {file:/Users/jacek/sandbox/scaladoc/}scaladoc/compile:doc 
[info] Defined at: 
[info] (sbt.Defaults) Defaults.scala:706 
[info] Dependencies: 
[info] compile:doc::configuration 
[info] compile:doc::sources 
[info] compile:doc::apiMappings 
[info] compile:doc::target 
[info] compile:doc::fileInputOptions 
[info] compile:doc::streams 
[info] compile:doc::compilers 
[info] compile:doc::scalacOptions 
[info] compile:doc::dependencyClasspath 
[info] compile:doc::maxErrors 
[info] compile:doc::javacOptions 
[info] Reverse dependencies: 
[info] *:copyDocAssetsTask 
[info] Delegates: 
[info] compile:doc 
[info] *:doc 
[info] {.}/compile:doc 
[info] {.}/*:doc 
[info] */compile:doc 
[info] */*:doc 
[info] Related: 
[info] test:doc 

Dependencies你會發現,doc任務除其他事項外取決於compile:doc::sources。再次使用inspect進行設置。

> inspect compile:doc::sources 
[info] Task: scala.collection.Seq[java.io.File] 
[info] Description: 
[info] All sources, both managed and unmanaged. 
[info] Provided by: 
[info] {file:/Users/jacek/sandbox/scaladoc/}scaladoc/compile:sources 
[info] Defined at: 
[info] (sbt.Defaults) Defaults.scala:187 
[info] Reverse dependencies: 
[info] compile:doc 
[info] Delegates: 
[info] compile:doc::sources 
[info] compile:sources 
[info] *:doc::sources 
[info] *:sources 
[info] {.}/compile:doc::sources 
[info] {.}/compile:sources 
[info] {.}/*:doc::sources 
[info] {.}/*:sources 
[info] */compile:doc::sources 
[info] */compile:sources 
[info] */*:doc::sources 
[info] */*:sources 
[info] Related: 
[info] compile:sources 
[info] test:sources 

Dependencies你會發現它取決於compile:sources和沿之後你會發現,你應該改變unmanagedSourceDirectories設置有你想要的東西。

相關問題