2012-01-09 12 views
17

He generado ant build.xml para mi proyecto de Android, usando android update project --name <project_name> --target <target_ID> --path path/to/your/project/ (según http://developer.android.com/guide/developing/other-ide.html) y luego modifiqué mi build.xml (hay algún código personalizado). Entonces mi build.xml está en el VCS.¿Hay alguna forma de generar el archivo ant local.properties sin sobreescribir build.xml?

Pero para realizar una construcción necesito el archivo local.properties, que también se genera con android update project y así se sobrescribe build.xml.

local.properties no debe registrarse en el VCS.

¿Hay alguna manera de generar únicamente las propiedades locales para que los desarrolladores (o un servidor de compilación) puedan verificar el código y crear el proyecto utilizando build.xml desde VCS?

Gracias!

Respuesta

34

No ponga local.properties en el VCS: generarla cada vez que no existe ya (después de una salida más limpia, por ejemplo), mediante la ejecución de

android update project -p . 

por lo androide puede generar con el camino correcto a la SDK. ant.properties o project.properties están destinados a ser puestos en VCS con lo que necesites arreglado en cada entorno de construcción posible.

Si no desea que el build.xml que se desea modificar, cambiar la entrada versión de etiqueta a algo diferente a su valor por defecto, que es 1. Por ejemplo:

<!-- version-tag: custom --> 

Si usted tiene una mirada en los comentarios de build.xml, afirma que al decir:

*********************** 
****** IMPORTANT ****** 
*********************** 
    In all cases you must update the value of version-tag below to read 'custom' instead of an integer, 
    in order to avoid having your file be overridden by tools such as "android update project" 
+0

Estoy aceptando su respuesta porque responde mi pregunta – Fedor

1

Parece que si sólo se especifica parámetro de ruta (por ejemplo android update project --path . cuando se llama desde el directorio del proyecto) sólo local.properties y proguard.cfg archivos se actualizan.

+3

... clobbering proguard.cfg es un problema. –

+1

'android update project --path .' Hubo una impresión incorrecta en la respuesta. Por favor, arreglalo. El comando es correcto. –

+0

@MaksimDmitriev gracias! – Fedor

1

Dado que (en general) solo contiene una sola propiedad, sdk.dir, apuntando a la raíz del SDK de Android del desarrollador, me inclino a decir que no es demasiado pedir a los desarrolladores que simplemente la creen a mano.

+0

Gracias por la respuesta, pero en realidad tuve este problema en nuestro servidor de compilación, por lo que es un poco problemático pedirle que cree el archivo sin decir cómo hacerlo :) Por supuesto que podría haber creado el archivo y que simplemente lo copié al archivo de proyecto de alguna parte, pero como podemos tener varios esclavos de compilación, quiero que sea más fácil de configurar. De todos modos 'andorid update project --path .' funciona bastante bien para mí. – Fedor

+0

Disculpa, pasé por alto completamente dónde dijiste "o un servidor de compilación" cuando escribí mi respuesta. – slyfox

Cuestiones relacionadas