자바 기초 지식 Maven
2.Maven 을 사용 하 는 장점
Maven 은 jar 가방 을 관리 하 는 것 이기 때문에 물론 jar 가방 과 관련 된 문 제 는 모두 해결 할 수 있 습 니 다.예 를 들 어 아래 의 문제:
jar 가방 간 의존 관계
질문
3.Maven 은 무엇 입 니까?
Maven 의 장점 을 소개 한 후에 우 리 는 본 격 적 으로 Maven 을 배우 기 시작 했다.
Maven 은 자동화 구축 도구 입 니 다.구축 은 무엇 입 니까?웹 프로젝트 로 예 를 들 면
이제 빌 드 코 너 를 소개 하 겠 습 니 다.
1.정리:이전의 컴 파일 결 과 를 삭제 하고 다시 컴 파일 할 준 비 를 합 니 다.
2.컴 파일:자바 소스 프로그램 을 바이트 파일 로 컴 파일 합 니 다.
3.테스트:프로젝트 중의 관건 점 에 대해 테스트 를 하고 프로젝트 가 교체 개발 과정 에서 관건 적 인 정확성 을 확보한다.
4.보고:매번 테스트 후 표준 형식 으로 테스트 결 과 를 기록 하고 보 여 줍 니 다.
5.포장:여러 파일 을 포함 하 는 프로젝트 를 압축 파일 로 포장 하여 설치 또는 배치 에 사용 합 니 다.자바 프로젝트 는 jar 패키지,웹 프로젝트 는 war 패키지 에 대응 합 니 다.
6.설치:Maven 환경 에서 포장 결과 인 jar 가방 이나 war 가방 을 로 컬 창고 에 설치 하 는 것 을 말한다.
7.배치:패키지 결 과 를 원 격 창고 에 배치 하거나 war 패 키 지 를 서버 에 배치 하여 실행 합 니 다.
우 리 는 jar 가방 을 구축 하려 면 위의 절 차 를 수 동 으로 완성 해 야 한다.Maven 을 사용 하면 상기 절 차 를 자동 으로 완성 할 수 있다.Maven 이 자동화 구축 을 실현 할 수 있 는 이 유 는 그의 디자인 과 밀접 한 관 계 를 가진다.우리 가 Maven 에 대한 학습 은 그것 의 9 가지 핵심 개념 을 중심 으로 전개 된다.
1.POM
2.약 속 된 디 렉 터 리 구조
3.좌표
4.관리 의존
5.창고 관리
6.라 이 프 사이클
7.플러그 인과 목표
8.상속
9.집합
4.Maven 설치
첫 번 째 단계:우 리 는 다음 두 개의 가방 이 필요 합 니 다.첫 번 째 maven-bin.zpi 이것 은 src 는 소스 코드 입 니 다.우 리 는 사용 할 수 없습니다.두 번 째 는 repo 입 니 다.그 안에 자주 사용 하 는 의존 가방 이 포함 되 어 있 습 니 다.
두 번 째 단계:우 리 는 이 두 가방 을 한 폴 더 에 넣 고 압축 을 풀 었 다.
세 번 째 단계,환경 변 수 를 설정 합 니 다.
내 컴퓨터 C>오른쪽 키 C>속성 C>고급 시스템 설정 C>환경 변수,그리고 앞 에 자바 설정 과 마찬가지 로 홈 을 새로 만 듭 니 다.
네 번 째,path 추가
다섯 번 째 단계,성공 여 부 를 테스트 합 니 다:명령 입력:
mvn -version
다섯 째 Maven
우 리 는 먼저 수 동 으로 공 사 를 만 들 고 느껴 본 다음 에 IDEA 를 이용 하여 Maven 공 사 를 만 드 는 방법 을 소개 하 겠 습 니 다.
첫 번 째 단계:약 속 된 디 렉 터 리 구 조 를 만 듭 니 다.
Hello
src
――main
――――java
――――resources
――test
――――java
――――resources
pom.xml
/*
main 。
test 。
java 。
resources
*/
두 번 째 단계:Maven 의 핵심 프로필 pom.xml 을 만 들 고 직접 복사 하면 됩 니 다.
<?xml version="1.0" ?>
<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>
<groupId>com.company.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>Hello</name>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
세 번 째 단계:홈 코드 를 작성 합 니 다. src/main/java/com/company/maven
디 렉 터 리 에 새 파일 Hello.java
package com.company.maven;
public class Hello {
public String sayHello(String name){
return "Hello "+name+"!";
}
}
네 번 째 단계:테스트 코드 를 작성 하여/src/test/java/com/company/maven
디 렉 터 리 에 새 테스트 파일 HelloTest.java
package com.company.maven;
import org.junit.Test;
import static junit.framework.Assert.*;
public class HelloTest {
@Test
public void testHello(){
Hello hello = new Hello();
String results = hello.sayHello("atguigu");
assertEquals("Hello atguigu!",results);
}
}
다섯 번 째 단계:기본 Maven 명령 을 실행 하고 Maven 명령 을 실행 할 때 pom.xml 파일 이 있 는 디 렉 터 리 에 들 어가 야 합 니 다.
cmd , Hello (pom.xml ) mvn compile ,
cmd mvn clean ,
cmd mvn compile ,
cmd mvn test-compile , target
cmd mvn test , target
cmd mvn package , target
cmd mvn install ,
6.Maven 로 컬 창고 의 배치<localRepository> </localRepository>
앞의 repo.zip 을 기억 하 십 니까?이 디 렉 터 리 를 설정 파일 에 추가 합 니 다.
Maven 은 외국 에서 개 발 된 것 이기 때문에 중앙 창고 도 외국 에 있 습 니 다.관련 jar 를 설치 하려 면 벽 을 넘 어야 할 수도 있 습 니 다.
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
7.IDEA 설정 Maven앞에서 수 동 으로 만 든 것 은 여러분 에 게 그 구 조 를 알 리 기 위해 서 입 니 다.저희 가 실제 개발 할 때 이렇게 번 거 로 울 수 는 없습니다.IDEA 에 직접 설정 하면 됩 니 다.
첫 번 째,Maven 설정 열기
두 번 째 단 계 는 maven 의 설치 디 렉 터 리 와 로 컬 창 고 를 설정 합 니 다.
세 번 째 단계,설정 선택
여덟 째 Maven
첫 번 째 단계:프로젝트 MavenProject 를 새로 만 들 고 오른쪽 단 추 를 누 르 면 빈 폴 더 를 만 듭 니 다.
두 번 째 단계:오른쪽 단 추→new Module→Maven→Hello 공정 모듈 만 들 기
main 。
test 。
java 。
resources
세 번 째 단계:Maven 의 핵심 프로필 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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- groupId + -->
<groupId>com.company.helloworld</groupId>
<!-- -->
<artifactId>Hello</artifactId>
<!-- -->
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- jar -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
네 번 째 단계:홈 코드 를 작성 하여 src/main/java 디 렉 터 리 에 새 파일 Hello.java
package com.atguigu.maven;
public class Hello {
public String sayHello(String name){
return "Hello "+name+"!";
}
}
다섯 번 째 단계:테스트 코드 를 작성 하여/src/test/java 디 렉 터 리 에 새 테스트 파일 HelloTest.java
package com.company.helloworld;
import org.junit.Test;
public class HelloTest {
@Test
public void testHello(){
Hello hello = new Hello();
String maven = hello.sayHello("Maven");
System.out.println(maven);
}
}
STEP 6:Maven 방식 으로 Maven 공 사 를 운영 하고 오른쪽 Maven 에서9.Maven 패키지 플러그 인
우리 가 우리 의 프로젝트 를 포장 할 때 기본 값 은 우리 가 사용 하 는 의존 도 를 포장 하지 않 습 니 다.만약 에 우리 프로그램 이 필요 로 하 는 의존 도 를 우리 의 프로젝트 와 함께 포장 하려 면 Maven 도 할 수 있 습 니 다.아래 의 내용 을 pom.xml 에 넣 으 면 됩 니 다.
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<!-- -->
<mainClass>xxx.xxx.XXX</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
총화이 장 에 서 는 Maven 의 기본 적 인 사용 을 소개 합 니 다.여기 서 우 리 는 Maven 이 공사 관 리 를 편리 하 게 하기 위해 서 입 니 다.이것 은 바로 창고 관리자 입 니 다.현지 창고 와 원 격 창고 가 있어 서 다른 사람 이 개발 한 jar 가방 을 편리 하 게 사용 할 수 있 고 프로젝트 의 배치 와 관 리 를 할 수 있 습 니 다.
자바 기반 의 첫 번 째 Maven 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.자바 Maven 에 관 한 더 많은 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.