Skip to Content
Nueva versión 12 disponible 🎉

Orden de ejecución

Los destinos que dependen unos de otros deben ejecutarse en el orden correcto. Babel Desktop los agrupa en flujos, numera sus pasos y puede pasar el archivo map de renombrado de un destino al siguiente.

Conectar dos destinos

Los anclajes izquierdo y derecho de un destino lo conectan con otro destino. Arrastre desde el anclaje derecho del primer destino hasta el anclaje izquierdo del segundo, o haga clic en los dos anclajes, uno después del otro. Babel Desktop pregunta entonces para qué sirve la conexión.

Cuadro de diálogo Connect targets, que explica que el segundo destino puede leer el archivo map de renombrado del primero, de modo que los nombres públicos que usa se renombran de la misma manera, o simplemente ejecutarse después del primero, con los botones Execution order only, Cancel y Pass the map fileCuadro de diálogo Connect targets, que explica que el segundo destino puede leer el archivo map de renombrado del primero, de modo que los nombres públicos que usa se renombran de la misma manera, o simplemente ejecutarse después del primero, con los botones Execution order only, Cancel y Pass the map fileCuadro de diálogo Connect targets, que explica que el segundo destino puede leer el archivo map de renombrado del primero, de modo que los nombres públicos que usa se renombran de la misma manera, o simplemente ejecutarse después del primero, con los botones Execution order only, Cancel y Pass the map file

Elegir entre orden de ejecución y vínculo de map

OpciónEfecto
Solo orden de ejecuciónUna conexión de flujo, con la etiqueta FLUJO →: el destino A se ejecuta antes que el destino B. No se pasa nada de A a B.
Pasar el archivo de mapUn vínculo de map, dibujado como una línea discontinua con la etiqueta MAP: A escribe su archivo map XML de renombrado y B lo lee, de modo que B usa los nombres nuevos de los símbolos públicos de A. A se ejecuta antes que B. Consulte Renombrado entre ensamblados.

Use un vínculo de map cuando B llama a la API pública de A y los dos se ofuscan con los símbolos públicos renombrados. Use una conexión de flujo cuando B solo tiene que ejecutarse después de A y no lee nada de él.

Un vínculo de map activa Generate Map Out File en el primer destino y añade su archivo map a los Map In Files del segundo. Si el primer destino no define ni una ruta de salida ni una ruta para el archivo map, este se escribe en un lugar fijo junto a su archivo de entrada, por ejemplo BabelOut/Library2.dll.map.xml, y así el segundo destino siempre lo encuentra.

Los vínculos de map no se guardan aparte: Babel Desktop los deduce de esos dos ajustes, así que un proyecto escrito a mano o con Babel UI también muestra sus vínculos de map. Los mismos vínculos aparecen en tres lugares:

  • En el diagrama, como la línea discontinua MAP, y en la tarjeta del segundo destino, bajo Lee el archivo map de.
  • En el grupo Archivos map del panel de propiedades del segundo destino, bajo Maps de otros destinos. Consulte Archivos map.
  • En la cuadrícula, en la pestaña Maps del segundo destino, donde la entrada indica De seguido del nombre del primer destino. Consulte Detalles del destino.

Un destino que se combina con otro no escribe ningún archivo map propio, por lo que no puede ser el primer destino de un vínculo de map.

Flujos y pasos

Un flujo es un grupo de destinos unidos entre sí por conexiones de flujo, vínculos de map o dependencias de combinación, incrustación y referencia. Los destinos que no están unidos entre sí forman flujos distintos. Cada destino muestra su paso, es decir, la posición en la que se ejecuta dentro de su flujo, en la parte superior derecha de su nodo. Su tarjeta muestra los dos, por ejemplo Flujo 1 · paso 2.

Dentro de un flujo, los destinos se ejecutan en el orden de los pasos y, cuando nada lo determina, en el orden del proyecto. Los flujos se ejecutan uno después de otro en el orden del proyecto, o al mismo tiempo cuando Ejecutar en paralelo los flujos independientes está activado. Las conexiones de flujo se guardan en el proyecto como dependencias estándar entre destinos de MSBuild, de modo que MSBuild compila los destinos en el mismo orden.

La cuadrícula puede mostrar la misma información en columnas: Flujo · Paso y Ejecutar después de, los destinos que deben terminar antes. Agrupar por flujo agrupa las filas por flujo. Consulte La cuadrícula del proyecto.

Destinos que se esperan unos a otros

Babel Desktop rechaza las conexiones de un destino consigo mismo y las conexiones duplicadas, y no admite una conexión que haga que varios destinos se esperen unos a otros. Si los destinos de un proyecto abierto desde el disco esperan cada uno el archivo map del otro, el proyecto se abre igualmente. Babel Desktop muestra un error que indica el ciclo, por ejemplo Library1.dll → Library2.dll → Library1.dll, y el proyecto no se ejecuta hasta que se quite uno de los vínculos.

Quitar una conexión

Para quitar una conexión de flujo o un vínculo de map, haga clic en él y pulse Delete o Backspace. Esc cancela una conexión en curso o anula la selección. Al quitar un vínculo de map, el archivo map sale de los Map In Files del segundo destino; también puede hacer clic en la × de su nombre bajo Maps de otros destinos, en el panel de propiedades.

Last updated on