Skip to content
| Marketplace
Sign in
Visual Studio Code>Snippets>JEX StartersNew to Visual Studio Code? Get it now.
JEX Starters

JEX Starters

raultm

|
3 installs
| (1) | Free
Snippets y generadores para proyectos Java Spring Boot con convenciones JEX.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

JEX Starters

JEX Starters es una extension de Visual Studio Code con snippets y generadores para acelerar desarrollos Java con Spring Boot.

Esta extension esta pensada para proyectos que sigan convenciones JEX, pero no es una publicacion oficial de ninguna administracion u organismo publico.

Caracteristicas

  • Snippets Java y YAML con prefijo jex-.
  • Generacion de esqueleto de entidad Spring Boot desde la paleta de comandos.
  • Creacion de clases base para controller, mapper, model, repository, servicios y validator.
  • Generacion de tests unitarios asociados.
  • Actualizacion de una plantilla OpenAPI base cuando el flujo de generacion lo requiere.
  • Creacion de proyectos Spring Boot con las convenciones comunes del servicio.
  • Aplicacion de configuracion estandar sobre proyectos Spring Boot existentes.

Uso

Proyecto estandar

Para crear un proyecto nuevo con las convenciones comunes, ejecuta:

JEX Spring Boot: Crear Proyecto Estandar

La extension descargara el proyecto desde Spring Initializr y aplicara la configuracion compartida: pom.xml, recursos, OpenAPI, Logback, .vscode, GitLab CI, .versionrc, .gitignore y scripts locales. La receta no fija una version concreta de Spring Boot: deja que Spring Initializr genere la version 4 disponible y despues anade la configuracion comun sobre ese proyecto. Java queda configurado en 21.

El proyecto queda preparado como WAR para servidor externo: spring-boot-starter-tomcat se marca como provided, se conserva o genera ServletInitializer, y se incluyen tareas de VS Code para arrancar en local y generar el WAR con el perfil dev.

Para aplicar esa misma configuracion sobre el proyecto abierto, ejecuta:

JEX Spring Boot: Aplicar Configuracion Estandar

El comando es idempotente: anade o actualiza configuracion comun, conserva archivos existentes que no debe sobrescribir y muestra un resumen final.

Generacion de entidad

Abre un proyecto Spring Boot en VS Code y ejecuta el comando:

JEX Spring Boot: Generar Esqueleto de Entidad

La extension busca el pom.xml en la raiz del proyecto para detectar groupId y artifactId, y con esos datos calcula el packageName base.

Despues solicita el nombre de la entidad en singular y plural, en formato CamelCase. Por ejemplo:

Provincia
Provincias

Con esos datos genera archivos en src/main/java como:

  • controllers/ProvinciasController.java
  • mappers/ProvinciaMapper.java
  • models/Provincia.java
  • repositories/ProvinciaRepository.java
  • services/provincias/CrearProvincia.java
  • services/provincias/ActualizarProvincia.java
  • services/provincias/BorrarProvincia.java
  • services/provincias/ListarProvincias.java
  • services/provincias/ObtenerProvincia.java
  • validators/ProvinciaValidator.java

Tambien genera tests unitarios en src/test/java como:

  • controllers/ProvinciasControllerTest.java
  • mappers/ProvinciaMapperTest.java
  • models/ProvinciaTest.java
  • services/provincias/CrearProvinciaTest.java
  • services/provincias/ActualizarProvinciaTest.java
  • services/provincias/BorrarProvinciaTest.java
  • services/provincias/ListarProvinciasTest.java
  • services/provincias/ObtenerProvinciaTest.java
  • validators/ProvinciaValidatorTest.java

Snippets incluidos

Los snippets disponibles usan el prefijo jex-:

  • jex-entity
  • jex-entity-with-dates
  • jex-test-service
  • jex-test-controller
  • jex-service
  • jex-repository
  • jex-mapper
  • jex-openapi-endpoint
  • jex-endpoint-full-crud
  • jex-openapi-schemas
  • jex-service-create-unit-test
  • jex-service-findAll-unit-test
  • jex-service-findById-unit-test

Requisitos del proyecto

El generador asume un proyecto Spring Boot con:

  • pom.xml en la raiz del workspace.
  • JUnit 5 y Mockito disponibles mediante las dependencias de test generadas por Spring Initializr.
  • MapStruct configurado para generar la implementacion de los mappers.
  • Entidades OpenAPI generadas con nombres como ProvinciaSummary, ProvinciaDetail, ProvinciaCreate, ProvinciaDetailResponse y ProvinciasListResponse.

Desarrollo

Para probar la extension desde VS Code, abre esta carpeta en VS Code y ejecuta Run Extension desde el panel de depuracion, o pulsa F5 si esa configuracion esta seleccionada.

Se abrira una ventana nueva llamada Extension Development Host. En esa ventana abre un proyecto Spring Boot de prueba y ejecuta el comando JEX Spring Boot: Generar Esqueleto de Entidad.

Ejecutar los tests:

npm run test:run

Empaquetar

Generar un .vsix instalable:

npm run package

Instalar el .vsix en VS Code:

Extensions: Install from VSIX...

Publicar en Visual Studio Marketplace

Antes de publicar, crea o confirma un publisher en Visual Studio Marketplace cuyo identificador coincida con el campo publisher de package.json.

Despues inicia sesion con vsce:

vsce login raultm

Y publica:

vsce publish

Proximas versiones

Para publicar una nueva version, primero aplica los cambios de codigo o plantillas, ejecuta los tests y genera el paquete local:

npm run test:run
npm run package

Despues incrementa la version siguiendo SemVer:

npm version patch

Usa patch para correcciones pequenas, minor para nuevas funcionalidades compatibles y major para cambios incompatibles. El comando actualiza package.json y package-lock.json, crea un commit de version y genera una etiqueta Git como v0.1.2.

Finalmente publica en Visual Studio Marketplace:

vsce publish

Si en el futuro se adopta Conventional Commits, se puede automatizar el changelog, el commit y la etiqueta con commit-and-tag-version:

npm install --save-dev commit-and-tag-version
npm pkg set scripts.release="commit-and-tag-version"
npm run release
vsce publish
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft