스프링과 직접적인 연관 없음! 따로 생각 해야합니다.
<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
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <!-- POM 버전 (고정값) -->
<!-- 프로젝트 기본 정보 -->
<groupId>com.example</groupId> <!-- 프로젝트의 그룹 ID (도메인 형태 권장) -->
<artifactId>my-app</artifactId> <!-- 프로젝트의 이름 (JAR 파일명) -->
<version>1.0.0</version> <!-- 프로젝트 버전 (버전 관리 필수) -->
<!-- 빌드 관련 정보 -->
<packaging>jar</packaging> <!-- JAR 또는 WAR 지정 (기본값: jar) -->
<properties><!--form.xml에서 자주 사용하게 되는 변수들을 저장해두고 사용 가능함.-->
<org.springframework-version>5.3.18</org.springframework-version><!--dependencies 밑의 주석 주소의 쿼리스트링쪽에 있는 일부 발췌-->
<org.aspectj-version>1.6.10</org.aspectj-version>
<org.apache.logging.log4j-version>2.12.1</org.apache.logging.log4j-version>
<org.springframework.security-version>5.7.2</org.springframework.security-version>
</properties>
<!-- 의존성 관리 -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope> <!-- 런타임 시 필요 -->
</dependency>
</dependencies>
<!-- 플러그인 설정 (빌드 자동화 도구) -->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
/src
/main
/java (Java 소스 코드)
/resources (리소스 파일)
/test
/java (테스트 코드)
/resources (테스트 리소스 파일)
/target (빌드된 산출물 위치)
/pom.xml (핵심 설정 파일)
✔️ 빌드와 의존성 관리 자동화
✔️ 프로젝트 구조의 표준화
✔️ 여러 모듈 프로젝트 관리 용이
✔️ 다양한 플러그인과 확장성 지원
✔️빌드 : 소스 코드를 실행 가능한 프로그램으로 변환하는 과정