Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to exclude java source files in doc task?

I'm using sbt 0.11.2 for a mixed Java/Scala project. I've realized that when I run the doc command from within sbt, it does not only create the scaladocs for the Scala source files in src/main/scala, but also for the Java source files in src/main/java (the sbt wiki claims to create them for src/main/scala only that seems not true).

However, this does not look very well. For instance, for a Java class named Foo with static methods there are two entries in the generated scaladoc: a Foo class and a Foo object. The class only lists the constructor and the object lists the static methods.

Is there any way I can tell sbt to exclude the src/main/java folder from the scaladoc generation? I want to create javadocs for those instead.

like image 551
pemistahl Avatar asked Jan 16 '12 18:01

pemistahl


1 Answers

The usual way to handle that is to use inspect to see where the information is coming from, and then change it. Inspecting at doc shows compile:sources(for doc), which is a Seq[java.io.File], and can be changed like this:

sources in (Compile, doc) ~= (_ filter (_.getName endsWith ".scala"))

You can use show compile:sources(for doc) to see what it contains, and then set to change it and check again its value.

like image 184
Daniel C. Sobral Avatar answered Oct 31 '22 11:10

Daniel C. Sobral