[Spring Boot] ν°λ―Έλμμ λΉλ ν΄ (Maven, Gradle)λ‘ Spring Boot μ€νμν€κΈ°
μ€λμ ν°λ―Έλμμ Springboot Application μ μ€νμν€λ λ°©λ²μ λν΄μ μμλ³΄λ € νλ€.
νμ¬ Microservice Application μ κ°λ°νκΈ° μν΄μ μ£Όλ‘ Eurekaμ Gateway λ₯Ό ν¨κ» λμμν€λ μΌμ΄ λ§μμ‘λ€.
Service Discovery μν μ μννλ Eureka μλ²λ λ¨μ§ μλΉμ€μ Registryμ Discovery μν©μμ μΌλκ³ λ§ μμ΄μΌ νλ μν©μ΄ μμ£Ό λ°μνλλ°, λ‘컬 κ°λ° νκ²½μμ κΈ°λ₯ κ°λ°μ μν΄μλ Eureka μλ²μ Gateway λ₯Ό Intellij μμ μΌλλ κ²μ΄ λλ€μμ΄λ€.
νμ§λ§ Intellij λ λ€μν κΈ°λ₯μ κ°κ³ μλ μ‘°κΈ λ¬΄κ±°μ΄ IDE μ΄κΈ° λλ¬Έμ ν΄λΉ PCμ 리μμ€λ₯Ό λ§μ΄ λ¨Ήμ΄ λΆνΈν μν©μ΄ μ΄λ§μ λ§μ΄ μλλ€.
κ·Έλ΄ λ λ§μ ν΄κ²° λ°©λ²μ΄ μ‘΄μ¬νκ² μ§λ§ λ΄κ° μμ£Ό μ μ©νλ λ°©λ²μΈ λΉλ λꡬλ₯Ό μ΄μ©ν Application μ€ν λ°©λ²μ 곡μ νλ € νλ€.
μ€λΉλ¬Ό
μ€λΉλ¬Όμ κ°κ°μ λ§λ Spring boot Applicationκ³Ό Gradle νΉμ Maven μ΄λ©΄ λλ€.
- λΉλ λꡬ
- Gradle
- Maven
- Spring boot application
- Terminal
homebrew μ€μΉ
μ°μ ν¨ν€μ§ κ΄λ¦¬ μμ€ν μΈ homebrew λ₯Ό μ€μΉν΄λ³΄μ.
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
Mavenκ³Ό Gradle μ brewλ‘ μ€μΉ
λΉλ λκ΅¬μΈ gradleκ³Ό mavenμ κ°μμ springboot application μ€νμ λ§κ² νλλ§ μ€μΉν΄λ μ’λ€.
maven μ€μΉ
brew install maven
gradle μ€μΉ
brew install gradle
μ€μΉκ° μλ£λμμΌλ©΄ gradle -v
νΉμ mvn -v
λ‘ μ μ€μΉλμλμ§ νμΈνμ.
Spring Boot Application μμ±νκΈ°
κΈ°μ‘΄μ Spring Boot Application μ΄ μ€λΉλμ΄μλ μ¬λμ ν΄λΉ νλ‘μ νΈ λλ ν λ¦¬λ‘ μ΄λνλ©΄ λκ³ λ§μ½ μ€λΉλμ΄ μμ§ μλ€λ©΄ κ°μκ° μνλ κΈ°λ₯μ κ°λ Spring Boot Projectλ₯Ό μμ±νμ.
Application.java
@SpringBootApplication
public class UserServiceApplication {
public static void main(String[] args) {
SpringApplication.run(UserServiceApplication.class, args);
}
}
Controller.java
@RestController
public void Controller {
@GetMapping("/")
public String test() {
return "User μλΉμ€μ κΈ°λ³Έ λμ Port: {" + port +"}";
}
}
Maven λ‘ Spring Boot application μ€ννκΈ°
$ mvn spring-boot:run
Gradle λ‘ Spring Boot application μ€ννκΈ°
$ gradle bootRun
κ·ΈλΌ λ€μκ³Ό κ°μ΄ ν°λ―Έλ νκ²½μμ μ μ€νλλ κ²μ λ³Ό μ μκ³ λΈλΌμ°μ μμλ μ μμ μΌλ‘ μ κ·Ό κ°λ₯ν μνκ° λλ€.