create-spring-boot-java-project
github/awesome-copilot
Crear esqueleto de proyecto Java con Spring Boot
...Expandir todoSobre create-spring-boot-java-project
La habilidad create-spring-boot-java-project está diseñada para automatizar la configuración de un esqueleto de proyecto Java Spring Boot, simplificando las fases iniciales del desarrollo del proyecto. Al proporcionar una plantilla lista para usar con configuraciones y dependencias esenciales, esta habilidad reduce el esfuerzo manual necesario para crear un nuevo proyecto Spring Boot desde cero. Asegura que el proyecto esté estructurado correctamente y equipado con los marcos de trabajo y herramientas necesarios para el desarrollo moderno en Java, como Docker y Docker Compose para entornos contenedores.
Las principales características de esta habilidad incluyen la descarga de una plantilla inicializadora de Spring Boot con dependencias predefinidas, la configuración de compatibilidad con Java 21 y la configuración de servicios básicos como Redis, PostgreSQL y MongoDB. También incorpora SpringDoc para la documentación de APIs y marcos de prueba adicionales como ArchUnit. La habilidad guía al usuario a través del proceso de descomprimir el proyecto, eliminar archivos temporales, actualizar pom.xml con dependencias adicionales y configurar application.properties con ajustes específicos para conexiones y marcos de trabajo. Además, proporciona una configuración de Docker Compose para iniciar rápidamente los servicios backend esenciales, asegurando un entorno de desarrollo consistente.
Esta habilidad es especialmente útil para desarrolladores Java, ingenieros DevOps y equipos de software que frecuentemente inician nuevos proyectos Spring Boot. Es ideal para aquellos que desean mantener la coherencia entre múltiples proyectos mientras minimizan el tiempo de configuración. También resulta beneficioso para fines educativos, ya que permite a estudiantes o novatos establecer rápidamente un entorno completo de proyecto Spring Boot con prácticas de desarrollo modernas y servicios integrados.
Preguntas Frecuentes
¿Qué software necesito tener instalado para usar esta habilidad?
Es necesario tener instaladas Java 21, Docker y Docker Compose en su sistema para utilizar esta habilidad de manera efectiva.
¿Puedo personalizar el nombre del proyecto y el nombre del paquete?
Sí, puede personalizar el nombre del proyecto cambiando el artifactId y el nombre del paquete actualizando el packageName en la configuración de descarga de la plantilla.
¿Cómo puedo actualizar la versión de Spring Boot para el proyecto?
Puede cambiar el parámetro bootVersion en la orden de descarga de la plantilla para especificar una versión diferente de Spring Boot.
¿Incluyen alguna dependencia predefinida los proyectos generados?
Sí, el proyecto incluye dependencias como Lombok, web, JPA, PostgreSQL, Redis, MongoDB, validación, caché y contenedores de prueba. Dependencias adicionales como SpringDoc y ArchUnit se añaden manualmente en pom.xml.
¿Esta habilidad configura automáticamente los servicios de base de datos?
Sí, incluye una configuración docker-compose.yaml para iniciar Redis, PostgreSQL y MongoDB con contraseñas predeterminadas y puertos asignados.
Create Spring Boot Java project prompt
Please make sure you have the following software installed on your system:
- Java 21
- Docker
- Docker Compose
If you need to custom the project name, please change the
artifactIdand thepackageNamein download-spring-boot-project-templateIf you need to update the Spring Boot version, please change the
bootVersionin download-spring-boot-project-template
Check Java version
- Run following command in terminal and check the version of Java
java -version
Download Spring Boot project template
- Run following command in terminal to download a Spring Boot project template
curl https://start.spring.io/starter.zip \ -d artifactId=${input:projectName:demo-java} \ -d bootVersion=3.4.5 \ -d dependencies=lombok,configuration-processor,web,data-jpa,postgresql,data-redis,data-mongodb,validation,cache,testcontainers \ -d javaVersion=21 \ -d packageName=com.example \ -d packaging=jar \ -d type=maven-project \ -o starter.zipUnzip the downloaded file
- Run following command in terminal to unzip the downloaded file
unzip starter.zip -d ./${input:projectName:demo-java}Remove the downloaded zip file
- Run following command in terminal to delete the downloaded zip file
rm -f starter.zip
Change directory to the project root
- Run following command in terminal to change directory to the project root
cd ${input:projectName:demo-java}
Add additional dependencies
- Insert
springdoc-openapi-starter-webmvc-uiandarchunit-junit5dependency intopom.xmlfile
<dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId> <version>2.8.6</version></dependency><dependency> <groupId>com.tngtech.archunit</groupId> <artifactId>archunit-junit5</artifactId> <version>1.2.1</version> <scope>test</scope></dependency>
Add SpringDoc, Redis, JPA and MongoDB configurations
- Insert SpringDoc configurations into
application.propertiesfile
# SpringDoc configurationsspringdoc.swagger-ui.doc-expansion=nonespringdoc.swagger-ui.operations-sorter=alphaspringdoc.swagger-ui.tags-sorter=alpha
- Insert Redis configurations into
application.propertiesfile
# Redis configurationsspring.data.redis.host=localhostspring.data.redis.port=6379spring.data.redis.password=rootroot
- Insert JPA configurations into
application.propertiesfile
# JPA configurationsspring.datasource.driver-class-name=org.postgresql.Driverspring.datasource.url=jdbc:postgresql://localhost:5432/postgresspring.datasource.username=postgresspring.datasource.password=rootrootspring.jpa.hibernate.ddl-auto=updatespring.jpa.show-sql=truespring.jpa.properties.hibernate.format_sql=true
- Insert MongoDB configurations into
application.propertiesfile
# MongoDB configurationsspring.data.mongodb.host=localhostspring.data.mongodb.port=27017spring.data.mongodb.authentication-database=adminspring.data.mongodb.username=rootspring.data.mongodb.password=rootrootspring.data.mongodb.database=test
Add docker-compose.yaml with Redis, PostgreSQL and MongoDB services
Create
docker-compose.yamlat project root and add following services:redis:6,postgresql:17andmongo:8.- redis service should have
- password
rootroot - mapping port 6379 to 6379
- mounting volume
./redis_datato/data
- password
- postgresql service should have
- password
rootroot - mapping port 5432 to 5432
- mounting volume
./postgres_datato/var/lib/postgresql/data
- password
- mongo service should have
- initdb root username
root - initdb root password
rootroot - mapping port 27017 to 27017
- mounting volume
./mongo_datato/data/db
- initdb root username
- redis service should have
Add .gitignore file
- Insert
redis_data,postgres_dataandmongo_datadirectories in.gitignorefile
Run Maven test command
- Run maven clean test command to check if the project is working
./mvnw clean testRun Maven run command (Optional)
- (Optional)
docker-compose up -dto start the services,./mvnw spring-boot:runto run the Spring Boot project,docker-compose rm -sfto stop the services.
Let's do this step by step
Instalar create-spring-boot-java-project
Descargue y descomprima los archivos de habilidades en su directorio .claude/skills/.
Descargar ZIPClona el repositorio y copia los archivos de la habilidad a tu proyecto.
git clone https://github.com/github/awesome-copilot/blob/main/skills/create-spring-boot-java-project/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
Copiar





Hogar
