svn-gvsig-desktop / tags / org.gvsig.desktop-2.0.12 / README.txt @ 44345
History | View | Annotate | Download (5.4 KB)
1 | 40435 | jjdelcerro | |
---|---|---|---|
2 | Como compilar |
||
3 | ================ |
||
4 | |||
5 | Para compilar la aplicacion gvSIG es necesario disponer de: |
||
6 | |||
7 | - maven instalado en el sistema, recomenado maven 3 (aunque podria compilar |
||
8 | con maven 2). |
||
9 | |||
10 | - Acceso a internet para acceder a los repositorios de maven de la aplicacion. |
||
11 | |||
12 | 40462 | jjdelcerro | - Si usan maven2 debera configurar la variable MAVEN_OPTS con el valor adecuado |
13 | (ver "notas de compilacion"). |
||
14 | 40435 | jjdelcerro | |
15 | - Descargar la carpeta org.gvsig.desktop y ejecutar "mvn clean install". |
||
16 | |||
17 | 40462 | jjdelcerro | Esto, por defecto, desplegara en la carpeta target/product la instalacion |
18 | de gvSIG. |
||
19 | 40435 | jjdelcerro | |
20 | Notas de compilacion |
||
21 | ======================== |
||
22 | |||
23 | MAVEN_OPTS |
||
24 | ------------ |
||
25 | |||
26 | 40462 | jjdelcerro | Usando maven 2, para que compile correctamente gvsig precisaremos especificar |
27 | en la variable MAVEN_OPTS una serie de valores para reserbar memoria para el |
||
28 | compilador. |
||
29 | 40435 | jjdelcerro | |
30 | Valores adecuados para la compilacion del proyecto "org.gvsig.desktop" son:: |
||
31 | |||
32 | 40476 | jldominguez | -Xms256m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=128m |
33 | 40435 | jjdelcerro | |
34 | Para asignar estos valores en linux puede hacerlo ejecutando la siguiente |
||
35 | instruccion en la linea de comandos desde la que vaya a compilar:: |
||
36 | |||
37 | 40476 | jldominguez | export MAVEN_OPTS="-Xms256m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=128m" |
38 | 40435 | jjdelcerro | |
39 | |||
40 | 40476 | jldominguez | En Windows se establece en esta opci?n o similar |
41 | (depende de versi?n de Windows): |
||
42 | 40435 | jjdelcerro | |
43 | 40476 | jldominguez | Panel de control |
44 | > Sistema |
||
45 | > Configurac?n avanzada del sistema |
||
46 | > Variables de entorno |
||
47 | > Nueva (en el valor no hace falta comillas) |
||
48 | |||
49 | |||
50 | 40435 | jjdelcerro | Si esta compilando desde eclipse, precisara tener instalado el plugin maven2e |
51 | |||
52 | 40462 | jjdelcerro | Usando maven2, cuando no especifica correctamente estos valores pueden |
53 | aparecerle errores como: |
||
54 | 40435 | jjdelcerro | |
55 | - Error "Compilation failure...":: |
||
56 | |||
57 | [ERROR] BUILD FAILURE |
||
58 | 40462 | jjdelcerro | [INFO] --------------------------------------------------------------- |
59 | 40435 | jjdelcerro | [INFO] Compilation failure |
60 | Failure executing javac, but could not parse the error: |
||
61 | |||
62 | |||
63 | The system is out of resources. |
||
64 | Consult the following stack trace for details. |
||
65 | java.lang.OutOfMemoryError: PermGen space |
||
66 | |||
67 | |||
68 | - Error "Error while executing forked tests...":: |
||
69 | |||
70 | [ERROR] BUILD ERROR |
||
71 | 40462 | jjdelcerro | [INFO] --------------------------------------------------------------- |
72 | 40435 | jjdelcerro | [INFO] Error while executing forked tests.; nested exception is org.apache.maven.surefire.booter.shade.org.codehaus.plexus.util.cli.CommandLineException: Error setting up environmental variables |
73 | |||
74 | java.io.IOException: error=12, Cannot allocate memory |
||
75 | |||
76 | gvsig-devel.properties |
||
77 | ------------------------------ |
||
78 | |||
79 | 40462 | jjdelcerro | Por defecto al ejecutar "mvn install" sobre org.gvsig.desktop la aplicacion |
80 | se desplegara en la carpeta target/product de ese mismo directorio. Una vez |
||
81 | ejecutado ese primer comando maven sobre la carpeta org.gvsig.desktop debera |
||
82 | editar el fichero ".gvsig-devel.properties" de la carpeta del usuario si |
||
83 | desea cambiarlo. |
||
84 | 40435 | jjdelcerro | |
85 | 40462 | jjdelcerro | Si tiene varios espacios de trabajo y desea que cada uno despliegue sobre |
86 | una carpeta distinta puede copiar el fichero de su carpeta de usuario a la |
||
87 | carpeta raiz de org.gvsig.desktop con el nombre "gvsig-devel.properties" y |
||
88 | cambiar en el sobre donde quiere hacer el despliegue, asi puede tener varias |
||
89 | "instancias" del desarrollo de gvSIG desplegandose sobre sitios distintos. |
||
90 | 40435 | jjdelcerro | |
91 | 40462 | jjdelcerro | Si ejecuta "mvn install" desde algun subproyecto de org.gvsig.desktop tenga |
92 | en cuenta que solo se utilizara el fichero ".gvsig-devel.properties" que hay |
||
93 | en su carpeta de usuario y no el del que se encuentre en org.gvsig.desktop. |
||
94 | 40435 | jjdelcerro | |
95 | Notas pendientes |
||
96 | ================= |
||
97 | |||
98 | Puede ser interesante mirar el plugin |
||
99 | |||
100 | http://mojo.codehaus.org/versions-maven-plugin/ |
||
101 | |||
102 | |||
103 | Importantes |
||
104 | ------------- |
||
105 | |||
106 | - En el pom de org.gvsig.desktop.installer hay una variable que falta por |
||
107 | definir. No tengo nada claro que valor a de tener. |
||
108 | |||
109 | 40462 | jjdelcerro | - Hay que a?adir la gestion de alias de paquetes del administrador de |
110 | complementos. |
||
111 | 40435 | jjdelcerro | |
112 | A tener en cuenta |
||
113 | -------------------- |
||
114 | |||
115 | 40462 | jjdelcerro | - Andami se lleva ahora muchas mas dependencias que antes, entre otras el |
116 | api de la libreria de proyecciones (se lo lleva org.gvsig.ui) pero como |
||
117 | no se lleva una implementacion peta en la inicializacion. De momento he |
||
118 | puesto un exclude de org.gvsig.projection en el assembly. |
||
119 | |||
120 | 40435 | jjdelcerro | - Los snappers que hay en appgvsig dependen de jts. |
121 | Habria que ver de cambiar su implementacion para que usen el API |
||
122 | de la libreria de geometrias y eliminar la dependencia de compilacion |
||
123 | de appgvsig hacia jts del pom. |
||
124 | |||
125 | - TangentPointSnapper |
||
126 | - PixelSnapper |
||
127 | - MediumPointSnapper |
||
128 | - PerpendicularPointSnapper |
||
129 | - NearestPointSnapper |
||
130 | |||
131 | 40462 | jjdelcerro | - La clase Line2DOffset en org.gvsig.symbology.lib.impl hace uso intensivo |
132 | de JTS. Ver si es viable crear una operacion sobre la geometria que haga |
||
133 | lo que hace esa clase. |
||
134 | 40435 | jjdelcerro | |
135 | - En org.gvsig.symbology.swing se hace uso de funcionalidades de andami. |
||
136 | |||
137 | - Hay que repasar la asignacion de iconos a las capas. Ver la extension |
||
138 | de extDWG, pero puede afectar a otras. |
||
139 | |||
140 | - Ver que pasa con las clases de DAL FeatureQueryOrder y DefaultFeatureComparator. |
||
141 | 40462 | jjdelcerro | De momento he hecho una chapuza y he incrustado DefaultFeatureComparator |
142 | dentro de FeatureQueryOrder en el API. |
||
143 | 40435 | jjdelcerro | |
144 | 40462 | jjdelcerro | - En la libreria de geometrias, la operacion Equals y el metodo equals de |
145 | Geometry hacen cosas distintas. En mapcontext, EqualsGeometryEvaluator, |
||
146 | he sustituido la llamada a la operacion por el metodo. |
||
147 | 40435 | jjdelcerro | |
148 | 40462 | jjdelcerro | - El proyecto org.gvsig.new.layer.lib.impl tiene una dependencia con |
149 | org.gvsig.projection.cresques.ui |
||
150 | 40435 | jjdelcerro | |
151 | 40462 | jjdelcerro | - En PluginServices, en el metodo getPluginHomeFolder, habria que hacer que |
152 | si es nuevo copie los contenidos de los AlternativeNames a el. De esta |
||
153 | forma seguira funcionanado con la configuracion que tuviese el usuario |
||
154 | aunque se renombre un plugin. |
||
155 | 40435 | jjdelcerro |