Плагин для gradle проектов#

Для сканирования проекта добавьте плагин в build.gradle:

plugins {
    id 'java'
    id 'eip-metamodel-scanner' version '5.4.0'
}
 
metamodel{
    componentCode = "unknown"
     
// Необязательные параметры. Для примера указаны умолчания
//    formattedOutput = false
//    strictTypeCheck = false
//    defaultClass = "java.lang.String"
//    formattedOutput = false
//    interruptOnError = false
//    internalPath = "."
//    outputDirectory = null - если null - файл модели будет расположен в корне результирующего jar-файла
//    schemaVersion = "1.0"
//    additionalPrimitiveTypes = """
//       some.additional.PrimitiveType,
//       some.additional.AnotherPrimitiveType
//    """
//
}
 
modelJpa{
    fileName = "название_файла.ldm.xml"
    modelName = "название модели"
    modelVersion = "версия модели"
    packages = """
        my.packages,
        com.my.packages
    """
 
// Необязательные параметры
//    excludePackages = """
//        my.packages.excluded.package1,
//        my.packages.excluded.package2
//    """
//    additionalTypes = """
//        com.additional.package.MyType1,
//        com.another.package.MyType2
//    """
//    excludeTypes = """
//        my.packages.some.another.path.ExcludedType1,
//        my.packages.another.path.ExcludeType2
//    """
//    versionFieldOverrideType = "java.lang.Long"
//    customModelTransformer = "my.packag.MyTransformer"
}

// Привязка задачи плагина к задаче сборки приложения 
rootProject.tasks.getByName("jar").dependsOn scanMetamodel

В более старых версиях для работы необходимо добавить конфигурацию:

buildscript {
    repositories {
        // укажите репозиторий с плагином
    }
    dependencies {
        classpath("sbp.eip.metamodel:eip-metamodel-scanner-gradle-plugin:5.4.0", "sbp.eip.metamodel:eip-metamodel-core:5.4.0")
    }
}

Описание параметров приведено в разделе «Параметры плагина».