链接scaladoc的来源?

Rog*_*ach 8 scala sbt

我需要从我的scaladoc链接到github上的源代码.我用sbt的doc任务构建那些文档.

有两个问题 - 首先,我不喜欢为我的.scala文件创建几个嵌套的空目录,所以我通常将它们全部打包在一起 - src/main/scala/org.rogach.scallop而不是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/")
Run Code Online (Sandbox Code Playgroud)

docs包含指向源的链接,但所有这些链接只指向源根URL,而不是文件本身.我究竟做错了什么?

Mar*_*rah 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')
Run Code Online (Sandbox Code Playgroud)

(是的,这是欧元符号.)

如果在包中定义了所有源,则类似下面的内容应该作为sourceUrl的参数:

https://raw.github.com/Rogach/scallop/master/src/main/scala/€{TPL_OWNER}.€{TPL_NAME}.scala
Run Code Online (Sandbox Code Playgroud)

  • 是的,我没有建议,因为很难正常工作.另见https://issues.scala-lang.org/browse/SI-5763. (2认同)