simbolos simbolo signo salen que porque pesos otro inician duplica documento cuando crea con archivos archivo abro abrir gradle

simbolo - Gradle Copie archivos y expanda solo algunos de ellos y/o ignore los signos de dólar en otros



porque cuando abro un documento de word se duplica (2)

Tengo un árbol de archivos que me gustaría copiar con Gradle, y para algunos de los archivos (por ejemplo, terminando en .txt), me gustaría hacer algunas substiciones de propiedad. Por ejemplo, tengo:

task "copyAndroidAssets$flavor" (type: Copy, dependsOn: ["cleanAndroidAssets", "copyAndroidRes$flavor"] ) { from "build/assets/${flavorLc}/release/" into ''../android/assets'' expand ( versionName: myVersionName, versionCode: myVersionCode ) }

El problema es que algunos de los archivos en el árbol que se está copiando tienen signos de dólar ($) que no tienen nada que ver con la expansión de propiedades, y esto crea el error SimpleTemplateScript6.groovy: 1: illegal string body character after dollar sign; .

En mi escenario específico, todos los archivos, excepto uno, simplemente pueden copiarse como están. Solo un archivo único, about.txt , necesita tener valores sustituidos. ¿Alguna sugerencia sobre una manera simple de hacer esto?


Gracias al enlace de Opal en los comentarios, encontré una solución. El enlace muestra que es posible tener múltiples fuentes y cada una de ellas puede tener un tratamiento de expand separado . Por lo tanto, en mi caso, solo quería expandir archivos .txt , así que dividí el contenido en dos partes usando include y exclude siguiente manera:

task "copyAndroidAssets$flavor" (type: Copy, dependsOn: ["cleanAndroidAssets", "copyAndroidRes$flavor"] ) { from ("build/assets/${flavorLc}/release/") { include ''**/*.txt'' expand ( versionName: versionName, versionCode: versionCode ) } from ("build/assets/${flavorLc}/release/") { exclude ''**/*.txt'' } into ''../android/assets'' expand ( versionName: myVersionName, versionCode: myVersionCode ) }


Ahora (Gradle 2.3.1) hay una mejor solución: https://issues.gradle.org/browse/GRADLE-1566

processResources { inputs.property(''version'', version) filesMatching("**/version.properties") { expand version: version } }

En mi caso, quiero expandir las propiedades del proyecto solo en archivos yaml:

processResources { filesMatching("**/*.yaml") { expand project.properties } }