java ant properties-file

java - agregar comentario en archivos.properties



ant properties-file (3)

Utilizando el siguiente bloque de código en el archivo build.xml

<propertyfile file="default.properties" comment="Default properties"> <entry key="source.dir" value="1" /> <entry key="dir.publish" value="1" /> <entry key="dir.publish.html" value="1" /> </propertyfile>

Puedo generar el archivo default.properties con los siguientes contenidos del archivo

source.dir=1 dir.publish=1 dir.publish.html=1

Quiero saber cómo puedo agregar mis comentarios en el archivo generado? Por ejemplo, las propiedades generadas deberían tener el siguiente contenido:

# Default Configuration source.dir=1 dir.publish=1 # Source Configuration dir.publish.html=1

¿Cómo puedo hacerlo dinámicamente usando build.xml de Ant?


De acuerdo con la documentation de la tarea PropertyFile , puede agregar las propiedades generadas a un archivo existente. Puede tener un archivo de propiedades solo con la línea de comentario y hacer que la tarea Ant agregue las propiedades generadas.


Escribir el archivo de propiedades con múltiples comentarios no es compatible. Por qué ?

PropertyFile.java

public class PropertyFile extends Task { /* ======================================================================== * * Instance variables. */ // Use this to prepend a message to the properties file private String comment; private Properties properties;

La tarea de archivo de propiedad ant está respaldada por una clase java.util.Properties que almacena comentarios utilizando el método store() . Solo se toma un comentario de la tarea y se pasa a la clase Properties para guardar en el archivo.

La forma de evitar esto es escribir su propia tarea respaldada por propiedades comunes en lugar de java.util.Properties . El archivo de propiedades comunes está respaldado por un diseño de propiedad que permite ajustes de comentarios para claves individuales en el archivo de propiedades. Guarde el archivo de propiedades con el método save() y modifique la nueva tarea para aceptar múltiples comentarios a través de elementos <comment> .


La tarea del archivo de propiedades es para editar archivos de propiedades. Contiene todo tipo de características agradables que le permiten modificar entradas. Por ejemplo:

<propertyfile file="build.properties"> <entry key="build_number" type="int" operation="+" value="1"/> </propertyfile>

He incrementado mi build_number en uno. No tengo idea de cuál era el valor, pero ahora es uno más grande de lo que era antes.

  • Use la tarea <echo> para compilar un archivo de propiedades en lugar de <propertyfile> archivo de <propertyfile> . Puede diseñar fácilmente el contenido y luego usar <propertyfile> para editar ese contenido más adelante.

Ejemplo:

<echo file="build.properties"> # Default Configuration source.dir=1 dir.publish=1 # Source Configuration dir.publish.html=1 </echo>

  • Crea archivos de propiedades separados para cada sección. Tiene permitido un encabezado de comentario para cada tipo. Luego, utilícelos para agruparlos en un solo archivo:

Ejemplo:

<propertyfile file="default.properties" comment="Default Configuration"> <entry key="source.dir" value="1"/> <entry key="dir.publish" value="1"/> <propertyfile> <propertyfile file="source.properties" comment="Source Configuration"> <entry key="dir.publish.html" value="1"/> <propertyfile> <concat destfile="build.properties"> <fileset dir="${basedir}"> <include name="default.properties"/> <include name="source.properties"/> </fileset> </concat> <delete> <fileset dir="${basedir}"> <include name="default.properties"/> <include name="source.properties"/> </fileset> </delete>