Я сделал что-то подобное несколько недель назад.Я назвал это «план слияния».Я хотел добавить свои файлы с новым содержимым и переопределить некоторые базовые файлы, чтобы изменить их поведение (как вы хотите).
Вы можете проверить мой проект здесь: https://github.com/avdev4j/generator-jhipster-mergeBP
Пример с угловыми файлами
У меня есть две константы, объявленные для хранения путей:
const ORIGINAL_ANGULAR_TEMPLATE_PATH = '../../../node_modules/generator-jhipster/generators/client/templates/angular';
const CURRENT_ANGULAR_TEMPLATE_PATH = 'angular';
Затем я вызываю "writeFilesToDisk" для обоих путей.Действительно, первый вызов должен всегда брать базовый путь jhipster, а второй - наш путь (чтобы наши файлы не перезаписывались).
function writeFiles() {
this.writeFilesToDisk(angularFiles, this, false, ORIGINAL_ANGULAR_TEMPLATE_PATH); // always originals first
this.writeFilesToDisk(files, this, false, CURRENT_ANGULAR_TEMPLATE_PATH);
}
КстатиЯ проверил проект kotlin deepu (создатель чертежа), и он сделал что-то близкое (я думаю) https://github.com/jhipster/jhipster-kotlin
Я планирую написать план в ближайшие дни. Ваши отзывы по этой теме будут очень благодарны.
Что касается sur, то мы должны осторожно переопределить базовые файлы, потому что это сделает обновления более сложными.
Это способ, который я выбрал, не знаю, есть ли более простой способ, но это должно бытьполезно.
мы поддерживаем связь;)