domingo, 2 de agosto de 2020

Maven (3) Proyectos multi-módulo. Copia de seguridad y restauración del proyecto

1. Introducción

Cuando creamos un proyecto multimódulo, es conveniente copiar solamente aquello que es importante como los archovos de configuración (pom.xml), recursos (carpetas resources), carpeta front end ... y no copiar las clases compiladas. Mas tarde el proceso de restauración debe de poder crear un proyecto en condiciones.

2. Programa shell de copia de ficheros importantes.

Veamos un shell script para linux (Ubuntu) donde se hace un tar con compresión y se excluyen los ficheros que se pueden regenerar (como las clases compiladas y otros ficherps que se pueden descargar con Maven)

Para ello hay que rellenar los parámetros del nombre del proyecto (carpeta), carpeta del workspace y carpeta donde se va a guardar el tar


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/bash

#--Explicación
#-------------------------------------------------------------------------------------------
# 1. Indicar project_name, workspace_folder i tar_folder
# 2. Se guardaran en la carpeta tar_folder indicando la fecha
# 3. Utilizamos las opciones cJf para guardar en formato comprimido "xy" que es mas efectivo
#-------------------------------------------------------------------------------------------

#--Parameters

project_name='MyVaadin15_02Parent'
workspace_folder='/home/eduard/Workspace202006/'
tar_folder='/home/eduard/BACKUPS/'

#--Calculations

project_file=${workspace_folder}${project_name}
my_time=`date +"%Y%m%d_%H%M"`
tar_file=${tar_folder}${project_name}"_"${my_time}".tar"


echo $tar_file
echo $project_file

#--Execution

cd ${workspace_folder}
tar -cJvf ${tar_file} --exclude='*/target' --exclude='*/.*' --exclude='*/node_modules' ${project_name}


3. Restauración

Tener en cuenta que los proyectos multi-módulo son un poco especiales a la hora de importarlos y no todos los métodos de imporación de Eclipse funcionan bien.

Para ello descomprimimos la copia de seguridad en la carpeta de nuestro WORKSPACE en Eclipse y hacemos:

File - Import - General - Projects from Folder or Archive



Y seleccionamos la carpeta del proyecto



Tenemos que seleccionar  tanto el proyecto padre como cada uno de los hijos a la vez. Una vez que Eclipse ve el proyecto padre y sus módulos hijos, tenenmos que verificar que encuentra el Java JDK correcto. Para ello hacemos

Window - Preferences - Java - Installed JREs


Ahora si queremos, se puede hacer clik_derecho sobre el proyecto (a veces no aparece la opción y hay que hacer el click derecho sobre el fichero pom.xml) y le damos Run As - Maven clean y repetimos con el  click derecho y Maven - Update Project 

4. Resolución de problemas


1. Si se ha instalado una nueva versión de Eclipse, verificar que se ha instalado Lombok!
2. Si se ha descomprimido el proyecto ebn otra carpeta, este proyecto NO SE COPIA a nuestro workspace, sino que queda vinculada, por eso hay que tener mucho cuidado.
3. Verificar que se apunta al JDK correcto Window - Preferences - Java - Installed JREs
 

No hay comentarios :

Publicar un comentario