51 lines
1.3 KiB
JavaScript
51 lines
1.3 KiB
JavaScript
#! /usr/bin/env runjs
|
|
|
|
var FastJSON = Packages.com.alibaba.fastjson.JSON;
|
|
|
|
var main = () => {
|
|
var javadocConfigFile = __.rfile.from('javadoc.json');
|
|
if (javadocConfigFile.notExists()) {
|
|
xprintln('[WARN] file `javadoc.json` not found!');
|
|
println();
|
|
println('Sample JSON:');
|
|
|
|
println(FastJSON.toJSONString($$.parseJSON(JSON.stringify({
|
|
"dest": "",
|
|
"source": "",
|
|
"subpackages": [
|
|
"com.example.a",
|
|
"com.example.b"
|
|
],
|
|
"encoding": "utf-8",
|
|
"charset": "utf-8"
|
|
})), true).replaceAll('\t', ' '));
|
|
return;
|
|
}
|
|
var javadocConfig = JSON.parse(javadocConfigFile.string());
|
|
var cmds = [];
|
|
cmds.push('javadoc');
|
|
if (javadocConfig.dest) {
|
|
cmds.push('-d');
|
|
cmds.push(javadocConfig.dest);
|
|
}
|
|
if (javadocConfig.source) {
|
|
cmds.push('-sourcepath');
|
|
cmds.push(javadocConfig.source);
|
|
}
|
|
if (javadocConfig.subpackages) {
|
|
cmds.push('-subpackages');
|
|
cmds.push(javadocConfig.subpackages.join(':'));
|
|
}
|
|
cmds.push('-encoding');
|
|
cmds.push(javadocConfig.encoding || 'utf-8');
|
|
cmds.push('-charset');
|
|
cmds.push(javadocConfig.charset || 'utf-8');
|
|
|
|
xprintln('[INFO] Command: ' + cmds.join(' '));
|
|
|
|
$$.shell(true).commands(cmds).run();
|
|
};
|
|
|
|
main();
|
|
|