Revision 16944 branches/v10/install/pluginInstallationTemplate/HOWTO-Extension.txt
HOWTO-Extension.txt | ||
---|---|---|
1 | 1 |
{{{ |
2 | 2 |
#!rst |
3 |
COMO SE GENERA UNA DISTRIBUCIÓN DE BINARIOS PARA UNA EXTENSIÓN
|
|
3 |
COMO SE GENERA UN INSTALABLE PARA UN PLUGIN DE GVSIG
|
|
4 | 4 |
|
5 | 5 |
Vamos a describir los pasos que se siguen actualmente para generar una distribución de binarios de una extensíon para gvSIG. |
6 | 6 |
Antes de empezar, hay que asegurarse de que en nuestro Workspace disponemos de la carpeta **"install"** y **"binaries"**, ya que estas dos carpetas son imprescindible para generar los binarios, y sin estas no se podria hacer. |
... | ... | |
10 | 10 |
Primero tenemos que modificar el fichero build.properties. Este fichero contiene el nombre de algunas variables y de la extensión. Tal y como esta comentado en el propio fichero, hay que indicar el directorio de nuestra extensión en **MAIN_INSTALL_PLUGIN**, verificar que los números de versión sean los correctos, indicar el nombre del plugin(extensión) en **APPNAME**, e finalmente indicarle el directorio donde se dejaran caer los binarios en **OUTPUT_DIR**. |
11 | 11 |
|
12 | 12 |
El siguiente fichero a modificar será el install.xml. Este ficheró sirve de guía para el IzPAck a la hora de generar el instalable. Al principio del fichero se debe de indicar el nombre del plugin en **"<appname> </appname>"**. |
13 |
Luego habrá que situarse en el final del fichero, en la zona de **<pack>**. En esta parte se definen que ficheros tendran que añadirse sobre la instalación de gvSIG ya existente.En **"name"** se indica el nombre del paquete tal y como se mostrará a la hora de la selección de paquetes durante la instalación, y en **"descripcion"** se indica la descripción que aparecerá al seleccionar dicha extensión. Posteriormente se definen los ficheros a añadir: Para ello disponemos de dos *tasks*:
|
|
13 |
Luego habrá que situarse en el final del fichero, en la zona de **<pack>**. En esta parte se definen que ficheros tendran que añadirse sobre la instalación de gvSIG ya existente. En **"name"** se indica el nombre del paquete tal y como se mostrará a la hora de la selección de paquetes durante la instalación, y en **"descripcion"** se indica la descripción que aparecerá al seleccionar dicha extensión. Posteriormente se definen los ficheros a añadir. Para ello disponemos de dos *tasks*:
|
|
14 | 14 |
|
15 | 15 |
**<file>**, con tres campos a especificar: |
16 |
|
|
16 | 17 |
- targetdir: Para especificar el destino de los ficheros que se copiaran. |
17 | 18 |
- src: Para especificar el fichero/directorio que se copiará. |
18 | 19 |
- override: Para especificar si se sobreescriben los ficheros a copiar en caso de que existan. Generalmente será **true**. |
20 |
|
|
19 | 21 |
**<fileset>**, con los siguientes campos: |
22 |
|
|
20 | 23 |
- targetdir: Para especificar el destino, de igual manera que <file>. |
21 | 24 |
- dir: El directorio de donde se copiaran los ficheros. |
22 | 25 |
- includes: Los ficheros a incluir en la copia. Lo interesante de este campo es que se pueden introducir patrones (como * o ?). |
23 | 26 |
- excludes: Semejante a includes, sólo que aqui se especifican los ficheros que **no** se desean copiar. |
24 | 27 |
- override: igual que en <file>. |
25 | 28 |
|
26 |
*Para más información acerca de los *tasks*, hay un html de ayuda en la carpeta install del workspace: install/install/IzPack/doc/izpack/html/index.html
|
|
29 |
*Para más información acerca de los tasks, hay un html de ayuda en la carpeta install del workspace: install/install/IzPack/doc/izpack/html/index.html*
|
|
27 | 30 |
|
28 | 31 |
Lo más normal será llevarse todo el directorio de nuestra extensión, y además, según que extensiones, se llevaran otros ficheros (ver ejemplos en el propio install.xml). |
29 | 32 |
|
30 |
Con esto ya tenemos todos los parámetros necesarios para generar los binarios, y simplemente habra que lanzar el buildExt.xml, que en cuanto finalice, encontraremos los binarios de nuestra extensión en la ruta que indicamos en **OUTPUT_DIR** del fichero build.properties.
|
|
33 |
Con esto ya tenemos todos los parámetros necesarios para generar los binarios, y simplemente habrá que lanzar el buildExt.xml, que en cuanto finalice, encontraremos los binarios de nuestro plugin en la ruta que indicamos en **OUTPUT_DIR** del fichero build.properties.
|
|
31 | 34 |
|
32 | 35 |
Normalmente los plugins añaden un panel (al que se accede en gvSIG por "ayuda->acerda de") con su correspondiente build.number para su seguimiento. |
33 | 36 |
Para poder añadir dicho panel se seguirán los siguientes pasos: |
... | ... | |
35 | 38 |
+ En la carpeta config del plugin, se tiene que crear un fichero **"about.htm"**. Se puede ver un ejemplo de este fichero en el plugin **"extExpressionField"**. Lo más importante en este fichero es tener la siguiente linea, que indica el build number: <p><br><br><b> Build Number: #build.number#</b></p> |
36 | 39 |
|
37 | 40 |
+ Dentro de nuestro plugin, hay que crear dentro del build.xml un target **<buildNumber>**, que se encargará de aumentarlo: :: |
41 |
|
|
38 | 42 |
<target name="buildNumber"> |
39 | 43 |
<propertyfile file="build.number" |
40 | 44 |
comment="Build Number for ANT. Do not edit!"> |
... | ... | |
43 | 47 |
<property file="build.number" /> |
44 | 48 |
</target> |
45 | 49 |
|
46 |
+ El fichero **"about.htm"** se tiene que copiar en una carpeta temporal y hacer el remplazo del #build.number# (el about.htm que se copiara al gvsig sera el que está en dicha carpeta temporal). Aqui un ejemplo (extraído del *extExpressionField/build.xml*): ::
|
|
50 |
+ El fichero **"about.htm"** se tiene que copiar en una carpeta temporal y hacer el remplazo del #build.number# (el about.htm que se copiara al gvsig sera el que está en dicha carpeta temporal). Aquí un ejemplo (extraído del *extExpressionField/build.xml*): ::
|
|
47 | 51 |
|
48 | 52 |
<target name="copy-data-files"> |
49 | 53 |
<copy file="config/config.xml" todir="${without_src}"/> |
50 | 54 |
<copy file="build.number" todir="${without_src}"/> |
51 |
<copy file="config/about.htm" todir="${without_src}"/> <!-- AQUI SE HACE LA COPIA DEL about.htm A LA CARPETA TEMPORAL -->
|
|
55 |
<copy file="config/about.htm" todir="${without_src}"/> <!-- AQUÍ SE HACE LA COPIA DEL about.htm A LA CARPETA TEMPORAL -->
|
|
52 | 56 |
<loadproperties srcFile="build.number"/> |
53 | 57 |
<replace casesensitive="true" |
54 | 58 |
file="${without_src}/about.htm" |
55 | 59 |
token="#build.number#" |
56 |
value="${build.number}"/> <!-- AQUI SE HACE EL REMPLAZO DE #build.number# -->
|
|
60 |
value="${build.number}"/> <!-- AQUÍ SE HACE EL REMPLAZO DE #build.number# -->
|
|
57 | 61 |
<copy todir="${without_src}"> |
58 | 62 |
<fileset dir="config" includes="text*.properties"/> |
59 | 63 |
</copy> |
Also available in: Unified diff