โข ์๋ ํ์ธ์~ ์ด์ ์ ์ด์ํ๋ ๋ธ๋ก๊ทธ ๋ฐ GitHub, ๊ณต๋ถ ๋ด์ฉ์ ์ ๋ฆฌํ๋ Study-GitHub ๊ฐ ์์ต๋๋ค!
โข ๐
โ ์คํ๋ง - Maven ๋ฉํฐ๋ชจ๋(Multi-Module) ํ๋ก์ ํธ ์ ํ ํ๊ธฐ(IntelliJ)
์๋ ํ์ธ์, ์ด๋ฒ ์๊ฐ์ ์ ๋ฆฌํ ๋ด์ฉ์ ์ธํ ๋ฆฌ์ ์ด์์ Maven ๊ธฐ๋ฐ์ Spring์์ ๋ฉํฐ๋ชจ๋ ํ๋ก์ ํธ ์ ํ ํ๊ธฐ์ ๋๋ค.
๋ฉํฐ ๋ชจ๋์ด๋ ?
ํ ํ๋ก์ ํธ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ฒ๋ผ ์ฌ์ฉ ๊ฐ๋ฅํ ์ํ๋ก ๋ชจ๋๋ค์ ๊ตฌ์ฑํ๊ณ , ๋ค๋ฅธ ๋ชจ๋์์ ์ฌ์ฉํ ์ ์๋๋ก ์ค์ ํ๋ ๊ฒ์ ๋งํ๋๋ฐ์, ์ ํ๋ฆฌ์ผ์ด์
์์ ์ฌ๋ฌ ๊ธฐ๋ฅ์ ๋ถํ ํด์ ์ฌ๋ฌ ๋ชจ๋๋ก ๋ํ๋ผ ๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ณด๋ค ์์ธํ ๋ด์ฉ์ ์๋ ์ฌ์ดํธ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์ ! woowabros.github.io/study/2019/07/01/multi-module.html |
โ ํ๋ก์ ํธ ์์ฑ
โข ๋จผ์ Maven ๊ธฐ๋ฐ ์คํ๋ง ๋ถํธ ํ๋ก์ ํธ๋ฅผ ์์ฑํฉ๋๋ค.
โข Spring Initializer > Maven ์ ํ ํ๊ณ ์ ๋ถ Next๋ฅผ ๋๋ฅด๊ณ ํ๋ก์ ํธ๋ฅผ ์์ฑํฉ๋๋ค.




โข pom.xml ์ packaging ํ๊ทธ์ pom์ ์์ฑํ๊ณ maven์ ์ ๋ฐ์ดํธ ํฉ๋๋ค.
(ํจํค์ง์ ํด์ฃผ์ง ์์ผ๋ฉด Maven ๋ชจ๋ ์์ฑ ์ ์์ ์ด ์งํ๋์ง ์์ต๋๋ค.)

โ Module ์์ฑ
โข ํ๋ก์ ํธ๋ฅผ ์์ฑํ์ผ๋ฉด Module์ ์์ฑํด์ค๋๋ค.
โข ํ๋ก์ ํธ ์ฐํด๋ฆญ > New > Module ํด๋ฆญ

โข Maven ์ ํ ํ Next

โข Module name ์ค์ ํ Finish๋ฅผ ํตํด ๋ชจ๋์ ์์ฑํฉ๋๋ค.
โข Parent์ parent pom์ด ์ง์ ๋์ด ์๋ ๊ฑธ ๋ณผ ์ ์์ต๋๋ค.

โข ํ๋ก์ ํธ์ child-module ๋ผ๋ ํ๋ก์ ํธ๊ฐ ์์ฑ๋ ๊ฑธ ๋ณผ ์ ์์ต๋๋ค.

โข ๋ํ child ํ๋ก์ ํธ์ pom์ <parent> ํ๊ทธ๋ก ๋ถ๋ชจ ํ๋ก์ ํธ๋ฅผ ์ฐธ์กฐํ๋๊ฑธ ๋ณผ ์ ์์ต๋๋ค.
โป ์ด ํ๊ทธ๊ฐ ๋ถ๋ชจ ํ๋ก์ ํธ์ ์์กด์ฑ๋ค์ ๊ฐ์ ธ์ค๋ ํ๊ทธ์ ๋๋ค.

โข ๋ถ๋ชจ(parent) pom์ ๋ณด๋ฉด ์๋จ์ ์ ์๋ ์๋ modules ํ๊ทธ๊ฐ ์์ฑ๋์์ต๋๋ค.

* ํ ์คํธ๋ฅผ ์ํด ๋ถ๋ชจ(parent-module) ํ๋ก์ ํธ์ pom์ web ๋ํ๋์๋ฅผ ์ถ๊ฐํด์ค๋๋ค.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

* child-module ํ๋ก์ ํธ์ ํฌํธ๋ฅผ ๋ณ๊ฒฝํด์ค๋๋ค.
(application.properties ์์ฑ์์ ๋ณ๊ฒฝํด์ฃผ์๋ฉด ๋ฉ๋๋ค.)

server.port=8088
๊ทธ๋ผ ๋ถ๋ชจ ํ๋ก์ ํธ๋ ํฌํธ๊ฐ 8080์ด๊ณ , ์์ ํ๋ก์ ํธ๋ ํฌํธ๊ฐ 8088 ์ ๋๋ค.
์ด์ ๋ ํ๋ก์ ํธ๋ฅผ ๊ธฐ๋ํด๋ณด๊ฒ ์ต๋๋ค.
โ parent-module ํ๋ก์ ํธ

โ child-module ํ๋ก์ ํธ

์๋ฒ๋ก ์ ์ํ๋ฉด ๋ ํ๋ก์ ํธ ๋ชจ๋ ๊ธฐ๋๋๊ฑธ ๋ณผ ์ ์์ต๋๋ค.

'Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Spring Boot Maven profile ์ด์ & ๊ฐ๋ฐ DB ๋ถ๋ฆฌ(AWS EC2) (6) | 2021.06.18 |
---|---|
JUnit - @ParameterizedTest, @ValueSource, @CsvSource, @MethodSource ์ด๋ ธํ ์ด์ (4) | 2021.06.08 |
[Spring] ๊ฐ์ฒด๋ณต์ฌ BeanUtils.copyProperties() & ์๋ ์๋ฆฌ (0) | 2021.02.20 |
[Spring] - @ModelAttribute, @RequestParam (0) | 2021.02.02 |
[Spring] HandlerMethodArgumentResolver (0) | 2021.01.30 |
๋๊ธ