¿Cómo utilizo los scripts de construcción?

¿Qué es un script de construcción?

Un script de construcción es un tipo de MPS solución que se utiliza para generar un archivo zip que puede ser incluido en proyectos posteriores. Esto nos permite vincular MPS proyectos juntos y reutilizar uno en otro.

¿Cuándo necesitaría un script de construcción?

Debe utilizar un script de construcción si desea exportar los componentes de su DSL para que puedan ser utilizados en otros proyectos. Por lo tanto, las bibliotecas reutilizables necesitan scripts de construcción, pero los proyectos de flujo finales no.

¿Cómo obtengo un script de construcción?

La forma más sencilla es simplemente al utilizar el scaffolder Para generar un proyecto completamente nuevo, incluya la opción 'useBuildScripts'. Esto lo configurará todo por usted y no hay nada adicional o especial que deba hacer.

¿Por qué no todos los proyectos tienen scripts de construcción?

Los scripts de construcción deben mantenerse actualizados con las dependencias que se utilizan en su proyecto, por lo que si añade dependencias, deberá actualizar el script de construcción. Aunque esto es trivial de hacer, si no necesita los extractos en formato zip, es más sencillo simplemente no tener la confusión de un script de construcción. ¡Siempre puede añadirlo más tarde!

¿Qué debo hacer si necesito agregar un script de construcción a un proyecto existente?

Si necesita agregar un script de construcción (es decir, si construyó su proyecto inicial sin uno y ahora desea agregarlo), simplemente siga estos pasos:

Creando el script de construcción

Haga clic derecho en su proyecto en MPS y seleccione 'Nuevo' > 'Compilar Solución'.

Una vez construido, seleccione el script de construcción en el navegador.

build scripts 1

En la parte superior de su script de construcción verá esto:

build scripts 2

Haga clic derecho en 'build.xml' y seleccione inspeccionar nodo (o presione Ctrl ALT I). Luego en el inspector cambie el panel de ubicación de construcción de ant para incluir la ruta de construcción de la siguiente manera:

build scripts 3

En la sección de la macro, necesitamos configurar las definiciones como se indica a continuación:

build scripts 4

En la estructura del proyecto, establezca el nombre y el nombre de la carpeta para utilizar la nueva variable solutionName que acaba de crear.

build scripts 5

En el mps En la sección de grupo, debe agregar una entrada para la nueva solución de compilación. Esto debe hacer referencia a la carga desde la ruta del directorio relevante en la carpeta de soluciones como se indica a continuación:

build scripts 6

Ahora, si regresa a la sección de estructura del proyecto, puede añadir la nueva entrada que ha creado:

buildscripts 1
Probablemente necesitará recargar las dos entradas en el 'mps sección 'grupo'. Para hacer esto, simplemente haga clic derecho en la entrada (que estará subrayada en rojo) y seleccione recargar desde el disco.

Finalmente, al final del archivo, necesitamos cambiar para crear una solución de plugin. Elimine la entrada que está allí y luego reemplácela con una entrada como se muestra a continuación:

build scripts 7

Ahora debe poder reconstruir la solución en IntelliJ. Si luego revisa sus archivos, debe ver un directorio 'build' que contiene la construcción.xml bajo el mps directorio.

build scripts 8

Uso del script de construcción

Ahora tiene el script de construcción; para invocarlo, simplemente necesitamos cambiar las definiciones de los azulejos en el mps pom.xml

<tiles>
    <tile>com.iconsolutions.ipf.core.flow:flo-mps-tile:${icon-flo.version}</tile>
    <tile>com.iconsolutions.ipf.core.flow:flo-mps-archive-tile:${icon-flo.version}</tile>
</tiles>

Aquí hemos reemplazado el flo-mps-plugin-tile con dos nuevos azulejos.