I originally submitted this as issue no 46 in the grunt-jsdoc project, but it seems unlikely to be related to the grunt-jsdoc code. A full gist of the initial report of the fault is located there, but I have also assembled the following jsdoc --explain gist for reporting here. See also the original gist here.
The core of my original report:
If I run jsdoc against only a single file, in the doc folder specified I get an index.html file with a single link to Main, which points to file:///C:/. If I run it against all of my JS files, I get an index.html file with links to only 2 classes, each with a single method defined. No errors are reported in either case. Both executions are documented in the gist.
I'm a bit perplexed. I have scrupulously documented nearly every public and private method in my codebase with jsdoc3 style comments.
I am using the latest version of jsdoc, running on Windows 7 x64, Node 0.10.12 to install, and Java 7 v21. If I execute jsdoc --debug, I get the Rhino debugger, but (with or without break on exceptions enabled), I can step through the entire stack without exception/breaking.
Ok. After some deep soul googling, I think I'm finally on the path to yes. After starting from @darlingjs blog post Creation of JavaScript Documentation, which is what launched my journey; I found @jewelsjacobs post Finally got JsDocs working with Node in which she ultimately opted to settle for the older jsdoc-toolkit. Unsatisfied, I finally found post How I introduced JsDoc by Simon Williams.
The key appears to be using
/**
* @memberOf jQuery
*/
After doing so in a single file, a few of my methods began appearing in the output. Then the remaining problems became much more obvious, most critically--when using Object.defineProperty, you have to specify the @name decorator. By whatever means JsDoc is parsing the AST, it is not associating property/method names with their corresponding objects; since this is the only way I add new properties/methods--I didn't get any documentation.
I think this is problem solved for me.
Glad to hear you got things working.
Right now JSDoc treats calls to Object.defineProperty just like any other function call. Changing this behavior will take a bit of work to implement, but I think it's worth doing. I'll file a new feature request.
Most helpful comment
Ok. After some deep soul googling, I think I'm finally on the path to yes. After starting from @darlingjs blog post Creation of JavaScript Documentation, which is what launched my journey; I found @jewelsjacobs post Finally got JsDocs working with Node in which she ultimately opted to settle for the older jsdoc-toolkit. Unsatisfied, I finally found post How I introduced JsDoc by Simon Williams.
The key appears to be using
After doing so in a single file, a few of my methods began appearing in the output. Then the remaining problems became much more obvious, most critically--when using
Object.defineProperty, you have to specify the@namedecorator. By whatever means JsDoc is parsing the AST, it is not associating property/method names with their corresponding objects; since this is the only way I add new properties/methods--I didn't get any documentation.I think this is problem solved for me.