Maven의 가장큰 특징은 best practice를 기반으로 하며, 마치 표준 처럼 제공하기 때문에, 모든 개발자가 공통으로 사용할 수 있다.
디렉토리 구조, 빌드 배포의 절차등을 템플릿 형태로 제공한다.
mvn archetype:generate \
-DarchetypeGroupId=org.apache.maven.archetypes \
-DgroupId=com.mycompany.app \
-DartifactId=my-app
groupId - 조직이나 도메인을 구별하기 위한 identitifier (mvn install시 이 구조로 source directory가 생성됨)
version - 빌드 버전 (artifact 버전)
artifactId - project에 의해서 생성되는 파일명 예를들어 jar를 만드는 프로젝트라면 jar 파일 명은
{artifactId}-{version}.jar 가 된다.
테스트케이스 Naming Rule
- **/*Test.java
- **/Test*.java
- **/*TestCase.java
src/main/java | Application/Library sources |
src/main/resources | Application/Library resources |
src/main/filters | Resource filter files |
src/main/assembly | Assembly descriptors |
src/main/config | Configuration files |
src/main/scripts | Application/Library scripts |
src/main/webapp | Web application sources |
src/test/java | Test sources |
src/test/resources | Test resources |
src/test/filters | Test resource filter files |
src/site | Site |
LICENSE.txt | Project's license |
NOTICE.txt | Notices and attributions required by libraries that the project depends on |
README.txt | Project's readme |