Tay*_*ese 14 scala sbt scaladoc
我试图跑sbt test:doc
,我看到一些类似于下面的警告:
[警告] /Users/tleese/code/my/stuff/src/test/scala/com/my/stuff/common/tests/util/NumberExtractorsSpecs.scala:9:找不到任何能为"com.my"链接的成员.stuff.common.util.IntExtractor".
问题似乎是从测试源到主要源的Scaladoc引用无法正确链接.知道我可能做错了什么或需要配置什么?
以下是我的Build.scala的相关部分:
val docScalacOptions = Seq("-groups", "-implicits", "-external-urls:[urls]")
scalacOptions in (Compile, doc) ++= docScalacOptions
scalacOptions in (Test, doc) ++= docScalacOptions
autoAPIMappings := true
Run Code Online (Sandbox Code Playgroud)
不确定这是否是令人满意的解决方案,但是...
Scaladoc当前期望成对的jar和URL可以使外部链接起作用。您可以使用强制sbt使用JAR链接内部依赖项exportJars
。比较值
$ show test:fullClasspath
Run Code Online (Sandbox Code Playgroud)
设置前后exportJars
。接下来,获取正在使用的JAR的名称,并将其链接到将要上传到的URL。
scalaVersion := "2.11.0"
autoAPIMappings := true
exportJars := true
scalacOptions in (Test, doc) ++= Opts.doc.externalAPI((
file(s"${(packageBin in Compile).value}") -> url("http://example.com/")) :: Nil)
Run Code Online (Sandbox Code Playgroud)
现在,我看到了test:doc
一个Scaladoc,其中包含从我的http://example.com/index.html#foo.IntExtractor的链接foo.IntExtractor
。