create-spring-boot-kotlin-project

create-spring-boot-kotlin-project

熱門

建立 Spring Boot Kotlin 專案骨架

3.7萬星標
4569分支
更新於 2026/7/14
SKILL.md
唯讀
名稱
create-spring-boot-kotlin-project
描述

建立 Spring Boot Kotlin 專案骨架

建立 Spring Boot Kotlin 專案提示詞

檢查 Java 版本

  • 在終端機執行以下命令,檢查 Java 版本
java -version

下載 Spring Boot 專案範本

  • 在終端機執行以下命令,下載 Spring Boot 專案範本
curl https://start.spring.io/starter.zip \
  -d artifactId=${input:projectName:demo-kotlin} \
  -d bootVersion=3.4.5 \
  -d dependencies=configuration-processor,webflux,data-r2dbc,postgresql,data-redis-reactive,data-mongodb-reactive,validation,cache,testcontainers \
  -d javaVersion=21 \
  -d language=kotlin \
  -d packageName=com.example \
  -d packaging=jar \
  -d type=gradle-project-kotlin \
  -o starter.zip

解壓縮下載的檔案

  • 在終端機執行以下命令,解壓縮下載的檔案
unzip starter.zip -d ./${input:projectName:demo-kotlin}

刪除下載的 ZIP 檔案

  • 在終端機執行以下命令,刪除下載的 ZIP 檔案
rm -f starter.zip

解壓縮下載的檔案

  • 在終端機執行以下命令,解壓縮下載的檔案
unzip starter.zip -d ./${input:projectName:demo-kotlin}

新增額外的相依套件

  • springdoc-openapi-starter-webmvc-uiarchunit-junit5 相依套件加入 build.gradle.kts 檔案中
dependencies {
  implementation("org.springdoc:springdoc-openapi-starter-webflux-ui:2.8.6")
  testImplementation("com.tngtech.archunit:archunit-junit5:1.2.1")
}
  • 將 SpringDoc 設定寫入 application.properties 檔案
# SpringDoc configurations
springdoc.swagger-ui.doc-expansion=none
springdoc.swagger-ui.operations-sorter=alpha
springdoc.swagger-ui.tags-sorter=alpha
  • 將 Redis 設定寫入 application.properties 檔案
# Redis configurations
spring.data.redis.host=localhost
spring.data.redis.port=6379
spring.data.redis.password=rootroot
  • 將 R2DBC 設定寫入 application.properties 檔案
# R2DBC configurations
spring.r2dbc.url=r2dbc:postgresql://localhost:5432/postgres
spring.r2dbc.username=postgres
spring.r2dbc.password=rootroot

spring.sql.init.mode=always
spring.sql.init.platform=postgres
spring.sql.init.continue-on-error=true
  • 將 MongoDB 設定寫入 application.properties 檔案
# MongoDB configurations
spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
spring.data.mongodb.authentication-database=admin
spring.data.mongodb.username=root
spring.data.mongodb.password=rootroot
spring.data.mongodb.database=test
  • 在專案根目錄建立 docker-compose.yaml,並新增以下服務:redis:6postgresql:17mongo:8

    • redis 服務應包含:
      • 密碼 rootroot
      • 將連接埠 6379 對應至 6379
      • 將資料卷 ./redis_data 掛載至 /data
    • postgresql 服務應包含:
      • 密碼 rootroot
      • 將連接埠 5432 對應至 5432
      • 將資料卷 ./postgres_data 掛載至 /var/lib/postgresql/data
    • mongo 服務應包含:
      • initdb root 使用者名稱 root
      • initdb root 密碼 rootroot
      • 將連接埠 27017 對應至 27017
      • 將資料卷 ./mongo_data 掛載至 /data/db
  • redis_datapostgres_datamongo_data 目錄新增至 .gitignore 檔案中

  • 執行 gradle clean test 命令,檢查專案是否能正常運作

./gradlew clean test
  • (選填)執行 docker-compose up -d 啟動服務、執行 ./gradlew spring-boot:run 運行 Spring Boot 專案、執行 docker-compose rm -sf 停止服務。

讓我們一步一步來完成。