Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / README.txt @ 40462

History | View | Annotate | Download (5.18 KB)

1

    
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
- Si usan maven2 debera configurar la variable MAVEN_OPTS con el valor adecuado 
13
  (ver "notas de compilacion").
14

    
15
- Descargar la carpeta org.gvsig.desktop y ejecutar "mvn clean install".
16
  
17
  Esto, por defecto, desplegara en la carpeta target/product la instalacion 
18
  de gvSIG.
19

    
20
Notas de compilacion
21
========================
22

    
23
MAVEN_OPTS
24
------------
25

    
26
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

    
30
Valores adecuados para la compilacion del proyecto "org.gvsig.desktop" son::
31

    
32
  -Xms256m -Xmx512m -XX:PerenmSize=64m -XX:MaxPermSize=128m
33

    
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
  export MAVEN_OPTS="-Xms256m -Xmx512m -XX:PerenmSize=64m -XX:MaxPermSize=128m"
38

    
39
En windows ....  ¿? FIXME
40

    
41

    
42
Si esta compilando desde eclipse, precisara tener instalado el plugin maven2e
43

    
44
Usando maven2, cuando no especifica correctamente estos valores pueden 
45
aparecerle errores como:
46

    
47
- Error "Compilation failure..."::
48

    
49
    [ERROR] BUILD FAILURE
50
    [INFO] ---------------------------------------------------------------
51
    [INFO] Compilation failure
52
    Failure executing javac, but could not parse the error:
53

    
54

    
55
    The system is out of resources.
56
    Consult the following stack trace for details.
57
    java.lang.OutOfMemoryError: PermGen space
58

    
59

    
60
- Error "Error while executing forked tests..."::
61

    
62
    [ERROR] BUILD ERROR
63
    [INFO] ---------------------------------------------------------------
64
    [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
65

    
66
    java.io.IOException: error=12, Cannot allocate memory
67

    
68
gvsig-devel.properties
69
------------------------------
70

    
71
Por defecto al ejecutar "mvn install" sobre org.gvsig.desktop la aplicacion 
72
se desplegara en la carpeta target/product de ese mismo directorio. Una vez
73
ejecutado ese primer comando maven sobre la carpeta org.gvsig.desktop debera 
74
editar el fichero ".gvsig-devel.properties" de la carpeta del usuario si 
75
desea cambiarlo.
76

    
77
Si tiene varios espacios de trabajo y desea que cada uno despliegue sobre 
78
una carpeta distinta puede copiar el fichero de su carpeta de usuario a la 
79
carpeta raiz de org.gvsig.desktop con el nombre "gvsig-devel.properties" y 
80
cambiar en el sobre donde quiere hacer el despliegue, asi puede tener varias
81
"instancias" del desarrollo de gvSIG desplegandose sobre sitios distintos.
82

    
83
Si ejecuta "mvn install" desde algun subproyecto de org.gvsig.desktop tenga 
84
en cuenta que solo se utilizara el fichero ".gvsig-devel.properties" que hay 
85
en su carpeta de usuario y no el del que se encuentre en org.gvsig.desktop.
86

    
87
Notas pendientes
88
=================
89

    
90
Puede ser interesante mirar el plugin 
91

    
92
http://mojo.codehaus.org/versions-maven-plugin/
93

    
94

    
95
Importantes
96
-------------
97

    
98
- En el pom de org.gvsig.desktop.installer hay una variable que falta por 
99
  definir. No tengo nada claro que valor a de tener.
100

    
101
- Hay que añadir la gestion de alias de paquetes del administrador de 
102
  complementos.
103

    
104
A tener en cuenta
105
--------------------
106

    
107
- Andami se lleva ahora muchas mas dependencias que antes, entre otras el 
108
  api de la libreria de proyecciones (se lo lleva org.gvsig.ui) pero como 
109
  no se lleva una implementacion peta en la inicializacion. De momento he 
110
  puesto un exclude de org.gvsig.projection en el assembly.
111

    
112
- Los snappers que hay en appgvsig dependen de jts.
113
  Habria que ver de cambiar su implementacion para que usen el API
114
  de la libreria de geometrias y eliminar la dependencia de compilacion
115
  de appgvsig hacia jts del pom.
116

    
117
  - TangentPointSnapper
118
  - PixelSnapper
119
  - MediumPointSnapper
120
  - PerpendicularPointSnapper
121
  - NearestPointSnapper
122

    
123
- La clase Line2DOffset en org.gvsig.symbology.lib.impl hace uso intensivo 
124
  de JTS. Ver si es viable crear una operacion sobre la geometria que haga 
125
  lo que hace esa clase.
126

    
127
- En org.gvsig.symbology.swing se hace uso de funcionalidades de andami.
128

    
129
- Hay que repasar la asignacion de iconos a las capas. Ver la extension 
130
  de extDWG, pero puede afectar a otras.
131

    
132
- Ver que pasa con las clases de DAL FeatureQueryOrder y DefaultFeatureComparator.
133
  De momento he hecho una chapuza y he incrustado DefaultFeatureComparator 
134
  dentro de FeatureQueryOrder en el API.
135

    
136
- En la libreria de geometrias, la operacion Equals y el metodo equals de 
137
  Geometry hacen cosas distintas. En mapcontext, EqualsGeometryEvaluator, 
138
  he sustituido la llamada a la operacion por el metodo.
139

    
140
- El proyecto org.gvsig.new.layer.lib.impl tiene una dependencia con
141
  org.gvsig.projection.cresques.ui
142

    
143
- En PluginServices, en el metodo getPluginHomeFolder, habria que hacer que 
144
  si es nuevo copie los contenidos de los AlternativeNames a el. De esta 
145
  forma seguira funcionanado con la configuracion que tuviese el usuario 
146
  aunque se renombre un plugin.
147

    
148

    
149

    
150

    
151