본문 바로가기

SpringBoot

pom.xml에 Start Spring-boot 의존성 추가

pom.xml에 의존성 추가

 

1. 라이브러리 버전 충돌 해결을 위한 의존성 추가

spring-boot-starter-parent

  ==> 프로젝트에 수많은 라이브러리를 추가 할 경우 버전에 따라 충돌이 나는 경우가 많은데 Spring-boot의 starter가 의존성 조합을 제공해 줄 때 start-parent는 해당 의존성 조합들간 충돌 문제가 없는 검증된 버전들을 조합해서 의존성을 추가해 주는 기능을 한다.

	<!-- Inherit defaults from Spring Boot -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.1.13.RELEASE</version>
	</parent>

mvnrepository, GitHub 에서 확인 가능.

위와 같이 spring-boot-starter-parent의존성만 추가를 해 주면 수많은 버전 충돌 문제를 쉽게 해결할 수 있다.

 

2. 웹을 사용하기 위한 의존성 추가

spring-boot-starter-web

 ==> 웹을 사용하기 위해서 아래 의존성을 추가한다.

	<!-- Add typical dependencies for a web application -->
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
	</dependencies>

 

3. Maven 빌드 플러그인 추가

spring-boot-maven-plugin

 ==> 실행 가능한 jar파일을 만들수 있게 하는 플러그인을 추가한다.

	<!-- Package as an executable jar -->
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

 

완성된 pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.example</groupId>
	<artifactId>myproject</artifactId>
	<version>0.0.1-SNAPSHOT</version>

	<!-- Inherit defaults from Spring Boot -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.1.13.RELEASE</version>
	</parent>

	<!-- Add typical dependencies for a web application -->
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
	</dependencies>

	<!-- Package as an executable jar -->
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

 

위의 기본 의존성들만 추가하고 프로젝트를 생성하게 되면 버전충돌없는 수많은 라이브러리를 자동으로 다운받을 수 있고, 웹도 제작할 수 있고, 배포도 할 수 있는 모든 기본적인 환경 설정을 마무리 할 수 있습니다.

 

참조 : https://docs.spring.io/spring-boot/docs/2.1.13.RELEASE/reference/html/getting-started-installing-spring-boot.html#getting-started-maven-installation