Scaladoc:@group 标签未显示在 API 文档中
Scaladoc: @group tag not showing in API documentation
我正在尝试使用@groupname 和@group 标签在我的库API 文档中组织class 的成员,但它不起作用(我使用的是sbt 0.13 .11)
我的玩具build.sbt
:
name := "test"
scalaVersion := "2.10.5"
我的玩具代码src/main/scala/test.scala
:
package test
/** Test class
*
* @groupname print Printer
* @groupname throw Thrower
*/
class TestClass {
/** @group print */
def trivialPrint: Unit = print("Hello")
/** @group throw */
def trivialError: Unit = throw new Exception("Hello")
}
sbt doc
编译一个 API 文档,其中我的两个函数都在 class 的 "Value Members" 组中(参见屏幕截图)。我做错了什么?
在 Scala 2.11 之前,您必须在 build.sbt
:
中明确请求 Scaladoc 分组支持
name := "test"
scalaVersion := "2.10.5"
scalacOptions += "-groups"
您可以将其范围限定为 in (Compile, doc)
,但我不确定它是否重要。
像大多数与 Scaladoc 相关的东西一样,这基本上没有记录,但它有效。
至少对于 Scala 2.11.x,似乎我们仍然需要专门要求它。在您的 build.sbt
中考虑以下内容:
/* Normal scalac options */
scalacOptions := Seq(
"-deprecation",
"-Ypartial-unification",
"-Ywarn-value-discard",
"-Ywarn-unused-import",
"-Ywarn-dead-code",
"-Ywarn-numeric-widen"
)
/* Only invoked when you do `doc` in SBT */
scalacOptions in (Compile, doc) += "-groups"
然后你的例子应该可以工作。
根据其他答案。对于 Maven <arg>-groups</arg>
。这是 Maven 版本:
<plugin>
<groupId>org.scala-tools</groupId>
<artifactId>maven-scala-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
</execution>
<execution>
<id>Scaladoc</id>
<goals>
<goal>doc</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<args>
<arg>-no-link-warnings</arg>
<arg>-groups</arg>
</args>
</configuration>
</execution>
</executions>
我正在尝试使用@groupname 和@group 标签在我的库API 文档中组织class 的成员,但它不起作用(我使用的是sbt 0.13 .11)
我的玩具build.sbt
:
name := "test"
scalaVersion := "2.10.5"
我的玩具代码src/main/scala/test.scala
:
package test
/** Test class
*
* @groupname print Printer
* @groupname throw Thrower
*/
class TestClass {
/** @group print */
def trivialPrint: Unit = print("Hello")
/** @group throw */
def trivialError: Unit = throw new Exception("Hello")
}
sbt doc
编译一个 API 文档,其中我的两个函数都在 class 的 "Value Members" 组中(参见屏幕截图)。我做错了什么?
在 Scala 2.11 之前,您必须在 build.sbt
:
name := "test"
scalaVersion := "2.10.5"
scalacOptions += "-groups"
您可以将其范围限定为 in (Compile, doc)
,但我不确定它是否重要。
像大多数与 Scaladoc 相关的东西一样,这基本上没有记录,但它有效。
至少对于 Scala 2.11.x,似乎我们仍然需要专门要求它。在您的 build.sbt
中考虑以下内容:
/* Normal scalac options */
scalacOptions := Seq(
"-deprecation",
"-Ypartial-unification",
"-Ywarn-value-discard",
"-Ywarn-unused-import",
"-Ywarn-dead-code",
"-Ywarn-numeric-widen"
)
/* Only invoked when you do `doc` in SBT */
scalacOptions in (Compile, doc) += "-groups"
然后你的例子应该可以工作。
根据其他答案。对于 Maven <arg>-groups</arg>
。这是 Maven 版本:
<plugin>
<groupId>org.scala-tools</groupId>
<artifactId>maven-scala-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
</execution>
<execution>
<id>Scaladoc</id>
<goals>
<goal>doc</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<args>
<arg>-no-link-warnings</arg>
<arg>-groups</arg>
</args>
</configuration>
</execution>
</executions>