Javaのファイルを漁ってクラス構成を分析する
古いバージョンでも動くようにする。モダンな書き方はアロー式を使う程度にする
schemaVersion: "2.1"
{
schemaVersion: string, // メジャーバージョンは下位互換がない時にあげる。下位互換のあるときはマイナーバージョン
meta: {
processDate: Date // 処理日
},
classes: [
{
filePath: string,
className: string,
isInterface: boolean,
isClass: boolean,
package: string,
fullPackage: string,
imports: string[],
implements: string[],
// 以下、isDDDがtrueの場合のみ
isRepositoryImpl: boolean,
isDataSourceRepository: boolean,
isAppService: boolean,
isOtherComponent: boolean,
isRestController: boolean,
isBatchMessageEndpoint: boolean,
isDiComponent: boolean,
domainRepositoryName: boolean,
apiEndPoints: string[],
apiEndPointLength: number,
},...
]
}
最新の情報はこちら
node index.js ./path/to/java/project > javaClasses.json
import { analizeJava } from "./path/to/analyzeJava/src/analizeJava.mjs";
/** @type JavaClasses */
const list = analizeJava("./path/to/java/project", true);
./node_modules/.bin/jsdoc2md -c jsdoc.conf src/typedef.mjs > javaClassesJSONSchema.md