Version: 1.0
Fecha: 16 de Marzo, 2026
Estado: NORMATIVO - Referencia Operativa
Arquitecto: Carlos Alberto Torres Camargo
Servicio de referencia: nebula-accounting-core
# Compilar sin empaquetar (verificacion rapida)
./mvnw clean compile
# Compilar con annotation processors (Lombok, MapStruct)
./mvnw clean compile -Dspring-boot.run.profiles=localhost
# Generar JAR ejecutable (sin tests)
./mvnw clean package -DskipTests
# Generar JAR con tests
./mvnw clean package
# Verificar JAR generado
ls -la target/*.jar
Instala el artefacto en el repositorio Maven local (~/.m2/). Necesario para librerias que otros proyectos consumen.
# Instalar sin tests (uso tipico para librerias)
./mvnw clean install -DskipTests
# Instalar con tests
./mvnw clean install
Orden de instalacion de librerias (estricto):
# 1. SimappeModel
cd backend/SimappeModel && ./mvnw clean install -DskipTests
# 2. SimappeCommons
cd backend/simappecommons && ./mvnw clean install -DskipTests
# 3. nebula-models
cd backend/nebula-models && ./mvnw clean install -DskipTests
# 4. nebula-commons
cd backend/nebula-commons && ./mvnw clean install -DskipTests
# 5. nebula-shared
cd backend/nebula-shared && ./mvnw clean install -DskipTests
Detalle completo: Flujo de Arranque Local
# Ejecutar con perfil localhost (desarrollo local)
./mvnw spring-boot:run -Dspring-boot.run.profiles=localhost
# Ejecutar con perfil dev (conecta a servidores de desarrollo)
./mvnw spring-boot:run -Dspring-boot.run.profiles=dev
# Ejecutar desde JAR
java -jar target/nebula-accounting-core-1.0.2-SNAPSHOT.jar --spring.profiles.active=localhost
# Ejecutar con debug remoto (puerto 5005)
./mvnw spring-boot:run -Dspring-boot.run.profiles=localhost -Dspring-boot.run.jvmArguments="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005"
# Ejecutar todos los tests
./mvnw test
# Ejecutar un test especifico
./mvnw test -Dtest=CentroCostosComponentTest
# Ejecutar tests con reporte
./mvnw test -Dmaven.test.failure.ignore=true surefire-report:report
# Ejecutar tests de integracion
./mvnw verify
# Saltar tests (compilar solamente)
./mvnw clean compile -DskipTests
Publica el artefacto en el repositorio Nexus corporativo.
# Deploy con perfil Centrica (librerias y servicios Nebula)
./mvnw deploy -P centrica -DskipTests
# Deploy a Nexus con tests
./mvnw deploy -P centrica
Prerequisito: Tener credenciales de Nexus en
~/.m2/settings.xml. Ver Configuracion Nexus y Maven.
# Build con perfil por defecto (dev)
docker build -t nebula-accounting-core:latest .
# Build con perfil especifico
docker build --build-arg PROFILE=prod -t nebula-accounting-core:prod .
# Build con ratio de memoria JVM custom
docker build --build-arg PROFILE=dev --build-arg JVM_MEMORY_RATIO=75.0 \
-t nebula-accounting-core:dev .
# Ejecutar contenedor
docker run -d \
--name nebula-accounting \
-p 8081:8080 \
-e APP_PROFILE=localhost \
nebula-accounting-core:latest
# Ver logs
docker logs -f nebula-accounting
# Detener y eliminar
docker stop nebula-accounting && docker rm nebula-accounting
# Generar JavaDoc en target/site/apidocs/
./mvnw javadoc:javadoc
# Abrir en navegador
xdg-open target/site/apidocs/index.html # Linux
open target/site/apidocs/index.html # macOS
# Generar javadoc JAR para distribucion
./mvnw javadoc:jar
GitLab Pages: La documentacion JavaDoc se publica automaticamente como GitLab Page. Ver seccion de CI/CD en el
.gitlab-ci.ymldel proyecto.
# Limpiar artefactos compilados
./mvnw clean
# Limpiar cache Maven local de un artefacto especifico
rm -rf ~/.m2/repository/com/centrica/nebula/nebula-accounting-core/
# Limpiar SNAPSHOTS antiguos del repositorio local
find ~/.m2/repository -name "*-SNAPSHOT" -type d -mtime +30 -exec rm -rf {} +
# Ver arbol de dependencias
./mvnw dependency:tree
# Ver dependencias efectivas del POM
./mvnw help:effective-pom
# Verificar actualizaciones de dependencias
./mvnw versions:display-dependency-updates
# Ver puertos en uso
lsof -i :8761 # Eureka
lsof -i :8890 # Config
lsof -i :8090 # Gateway
lsof -i :8787 # OAuth2
lsof -i :9010 # Admin
lsof -i :9020 # Client
# Verificar health de un servicio
curl -s http://localhost:{PUERTO}/actuator/health | jq .
| Accion | Comando |
|---|---|
| Compilar | ./mvnw clean compile |
| Empaquetar | ./mvnw clean package -DskipTests |
| Instalar local | ./mvnw clean install -DskipTests |
| Ejecutar localhost | ./mvnw spring-boot:run -Dspring-boot.run.profiles=localhost |
| Ejecutar dev | ./mvnw spring-boot:run -Dspring-boot.run.profiles=dev |
| Tests | ./mvnw test |
| Test especifico | ./mvnw test -Dtest=NombreTest |
| Deploy Nexus | ./mvnw deploy -P centrica -DskipTests |
| Docker build | docker build -t nombre:tag . |
| JavaDoc | ./mvnw javadoc:javadoc |
| Dependencias | ./mvnw dependency:tree |
| Limpiar | ./mvnw clean |
| Version | Fecha | Autor | Descripcion |
|---|---|---|---|
| 1.0.0 | 2026-03-16 | Carlos Torres | Creacion del documento |