Где scaladoc ищет файл rootdoc.txt для создания корневого документа

Это дубликат Generate scaladoc для корневого пакета, однако в ответе не указано, где sbt doc ищет rootdoc.txt,

я добавил

 scalacOptions in doc ++= Seq("-doc-root-content", "rootdoc.txt")

к моему build.sbt, но sbt doc похоже не сканирует его. Я пытался положить его рядом с build.sbt, в src, src/main, src/main/scala

я использую sbt 0.12.3

3 ответа

Решение

Кажется, что ваши аргументы не даны scaladocсовсем. Я не могу понять, почему аргументы командной строки не передаются при doc, но это работает, если вы не охватите его docно Compile:

 scalacOptions in Compile ++= Seq("-doc-root-content", "rootdoc.txt")

С rootdoc.txtв корне вашего проекта.

Правильное решение, кажется,

settings(
   // Get scaladoc to add rootdoc.txt content to index.html
   scalacOptions in (Compile,doc) ++= Seq("-doc-root-content", "rootdoc.txt")
).

забота о https://github.com/pnerg/sbt-scaladoc-settings-plugin/blob/master/README.md

Это огорчает меня, это было так трудно понять.

Вы должны использовать абсолютный путь к файлу:

scalacOptions in doc <++= baseDirectory map { d =>
  Seq("-doc-root-content", d / "rootdoc.txt" getPath)
}

это заставит scaladoc искать rootdoc.txt в корне проекта, он же рядом с build.sbt

Другие вопросы по тегам