I am writing a custom library. It's build into a .jar archive. I am fully able to generate the javadoc, but I don't know how I should distribute it?
- Put it in the same .jar with the library
- Put it in a different .jar
- Some other way?
And how to include the javadoc in another project that uses my lib?
- If I had put it in the same .jar, should I have written something in the manifest?
- If it's in a separate .jar, is including it in the project enough?
I am using NetBeans 9.1.
Another way: For me this was the best choise: (addingto build.xml. I've tested it on NetBeans IDE 7.0 and 7.2.1) (found it on Automatically generating source and doc jars in Netbeans )
This will create four jars, one to application program, one to sources, one to tests and one to javadoc.
It's a general practice to keep the JavaDocs in a separate archive. or even more commonly, in a directory called 'docs'. you do not needlessly want to bloat your library's archive with the html and js files.
And why would you want to include the generated JavaDocs [html + js] in your project? As long the source code JavaDoc comments are in place, someone using your library will be able to see them by simply hovering over w/ the mouse in any of the modern IDE's
Update
As per nanda's comment below, I checked the same and he IS correct. In my project, I have actually attached Javadocs from the 'doc' folder to the archive to be able to view them on mouseover.
I'd include the library .jar and the documentation and other things, like a README, License file etc. in a single archive (zip or tar.gz)
mylib-1.0.1.tar.gz , which contains:
Instead of the expanded javadoc/ sub directory within the archive, you could add the compressed javadoc in a mylib-1.0.1-javadoc.jar (or zip) , both options are common.