Maven 기반 IDEA 를 사용 하여 다 중 모듈 프로젝트 만 들 기

19195 단어 maven다 중 모듈
최근 에 분포 식 프로젝트 의 개발 을 배 운 것 을 감안 하여 IntelliJ IDEA 를 사용 하여 Maven 기반 다 중 모듈 프로젝트 를 만 드 는 실제 개발 에 대해 말씀 드 리 겠 습 니 다.적절 하지 않 은 부분 이 있 을 수 있 지만 프로젝트 는 통할 수 있 습 니 다.부족 한 점 이 있 으 면 모두 제기 하고 토론 하 겠 습 니 다.
프로젝트 디 렉 터 리
먼저 최종 프로젝트 의 프로젝트 목록 을 보 여 줍 니 다.

디 렉 터 리 구 조 를 간단하게 소개 합 니 다.
4.567914.모든 프로젝트 의 부모 프로젝트 로 모든 프로젝트 에 사용 되 는 jar 패키지 와 버 전 을 관리 합 니 다.
4.567914.공공 도구 류 프로젝트 로 부모 프로젝트 를 계승 하면 jar 패키지 로 다른 프로젝트 에 사용 할 수 있 습 니 다.
4.567914.우리 자신의 프로젝트 를 위해 우리 의 아버지 프로젝트 를 계승 합 니 다.
4.567914.우리 자신의 프로젝트 를 위 한 서브 모듈 은 taotao-manager 에 의존 하여 jar 패키지 로 만 듭 니 다.
4common-parent우리 자신의 프로젝트 를 위 한 서브 모듈 은 taotao-manager-pojo 에 의존 하여 jar 가방 으로 만 듭 니 다.
4common-utils우리 프로젝트 의 키 모듈 은 taotao-manager-mapper 에 의존 하여 jar 패키지 로 만 듭 니 다.
4.567914.우리 자신의 프로젝트 를 위 한 서브 모듈 은 taotao-manager-service 에 의존 하여 war 패키지 로 만 듭 니 다.
2.부모 프로젝트 만 들 기
다음은 구체 적 인 조작 입 니 다.
1.먼저 IntelliJ IDEA 를 열 고 다음 절 차 를 따른다.
 
아 이 디 어 를 처음 켜 보 거나...
 
2.디 렉 터 리 생 성 에 와 서 Empty project,next 를 선택 하 십시오.
 
3.New Project 페이지 에 와 서 procject name 을 작성 하고 Project location 을 선택 하고 Finish 를 누 르 십시오.
 
IDEA 로 딩 이 완료 되 기 를 기다 리 며 다음 단 계 를 진행 합 니 다.
4.FileC>NewC>Module 을 선택 하고 New Module 페이지 로 들 어가 기:
 
5.New Module 페이지 에서 다음 절 차 를 밟 습 니 다.
 
6.조직 명 과 항목 명,버 전 번호 작성
 
7.로 컬 maven 디 렉 터 리 및 maven 창고 프로필 설정
 
8.부모 프로젝트 의 마지막 단 계 를 만 들 고 Module 에 이름 을 짓 고 작업 디 렉 터 리 를 선택 하 며 완성 을 선택 합 니 다.

pom 파일 생 성 을 기다 리 고 있 습 니 다.포장 방식 을 pom 으로 수정 하 십시오.pom 파일 을 수정 하 는 것 은 다음 과 같 습 니 다.(pom 파일 이 길 기 때문에 부분 만 제시 하고 모든 것 을 가 져 옵 니 다.github 에 주목 하 십시오)

<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>cn.william</groupId>
  <artifactId>common-parent</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>pom</packaging><!--      -->

  <name>common-parent</name>
  <url>http://maven.apache.org</url>

  <!--         -->
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <junit.version>4.12</junit.version>
    ...(  )
  </properties>

  <dependencyManagement>
    <dependencies>
      <!--        -->
      <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>${joda-time.version}</version>
      </dependency>
      ...(  )
  </dependencyManagement>

  <build>
    <finalName>${project.artifactId}</finalName>
    <plugins>
      <!--          -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.7</version>
        <configuration>
          <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
      <!-- java     -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
          <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>
3.공공 도구 클래스 만 들 기
우선,공공 도구 류 는 부모 프로젝트 인 common-parent 를 계승 합 니 다.
주의해 야 할 점 은 프로젝트 가 모듈 로 나 뉘 어 보 이 는 형식(eclipse 에서 개발 하 는 것 과 유사)을 위해 common-utils 를 만 드 는 데 한 가지 주의 가 필요 합 니 다.
 
 
다음 단 계 는 디 렉 터 리 구조 에 영향 을 줄 수 있 으 니 주의 하 세 요.
 
 
 

마찬가지 로 항목 의 포장 방식 은 jar 이 며,부모 항목 과 다 릅 니 다.

<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">
  <parent>
    <artifactId>common-parent</artifactId>
    <groupId>cn.william</groupId>
    <version>1.0-SNAPSHOT</version>
    <relativePath>../common-parent/pom.xml</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>common-utils</artifactId>
  <packaging>jar</packaging><!--   jar  -->

  <name>common-utils</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <!-- jar     -->
  <dependencies>
    <!--        -->
    <dependency>
      <groupId>joda-time</groupId>
      <artifactId>joda-time</artifactId>
    </dependency>
    ...(  )
  </dependencies>

</project>
3.개발 프로젝트 창설
개발 프로젝트 taotao-manager 를 만 듭 니 다.그 생 성 절 차 는 위 와 같 습 니 다.comon-parent 를 계승 하고 pom 파일 을 수정 합 니 다.상세 한 것 은 다음 과 같 습 니 다.

<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">
  <parent>
    <artifactId>common-parent</artifactId>
    <groupId>cn.william</groupId>
    <version>1.0-SNAPSHOT</version>
    <relativePath>../common-parent/pom.xml</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>taotao-manager</artifactId>
  <packaging>pom</packaging>

  <name>taotao-manager</name>
  <url>http://maven.apache.org</url>
  <modules>
    <module>taotao-manager-pojo</module>
    <module>taotao-manager-mapper</module>
    <module>taotao-manager-service</module>
    <module>taotao-manager-web</module>
  </modules>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <!--      -->
  <dependencies>
    <dependency>
      <groupId>cn.william</groupId>
      <artifactId>common-utils</artifactId>
      <version>1.0-SNAPSHOT</version>
    </dependency>
  </dependencies>

  <build>
    <!--      -->
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <configuration>
          <port>8080</port>
          <path>/</path>
        </configuration>
      </plugin>
    </plugins>
  </build>


</project>
4.개발 프로젝트 서브 모듈 만 들 기
taotao-manager-pojo,mapper,service,웹 등 서브 모듈 을 만 듭 니 다.상세 한 것 은 다음 과 같 습 니 다.
오른쪽 키 로 taotao-manager 를 클릭 하여 New,Module 을 선택 하 십시오.
 
 
이 단 계 는 common-utils 를 만 들 때 와 달리 하위 모듈 을 taotao-manager 디 렉 터 리 에 추가 합 니 다.
 
maven 의 관련 설정,기본 값 유지:
 
하위 모듈 이 있 는 디 렉 터 리 에 주의 하 십시오:

taotao-manager 의 다른 하위 모듈 만 들 기
위 에서 말 한 바 와 같이 taotao-manager-pojo 서브 모듈 을 만 듭 니 다.다른 세 개의 서브 모듈 의 생 성 방식 은 이와 유사 합 니 다.조금 다 릅 니 다.taotao-manager-web 서브 모듈 을 만 들 때 maven 프로젝트 의 유형 은 다음 과 같 습 니 다.

하위 모듈 의 pom 파일 수정
하위 모듈 pojo,mapper,service 의 포장 방식 은 모두 jar 이 고 웹 하위 모듈 만 war 패키지 로 포장 합 니 다.
pojo 서브 모듈,pom.xml 상세 내용 은 다음 과 같 습 니 다.

<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">
  <parent>
    <artifactId>taotao-manager</artifactId>
    <groupId>cn.william</groupId>
    <version>1.0-SNAPSHOT</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>taotao-manager-pojo</artifactId>
  <packaging>jar</packaging>

  <name>taotao-manager-pojo</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

</project>
mapper 서브 모듈 의존 과 pojo 서브 모듈,pom.xml 상세 한 내용 은 다음 과 같 습 니 다.

<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">
  <parent>
    <artifactId>taotao-manager</artifactId>
    <groupId>cn.william</groupId>
    <version>1.0-SNAPSHOT</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>taotao-manager-mapper</artifactId>
  <packaging>jar</packaging>

  <name>taotao-manager-mapper</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <!--    pojo    -->
    <dependency>
      <groupId>cn.william</groupId>
      <artifactId>taotao-manager-pojo</artifactId>
      <version>1.0-SNAPSHOT</version>
    </dependency>
    <!-- Mybatis -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
    </dependency>
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
    </dependency>
    <dependency>
      <groupId>com.github.miemiedev</groupId>
      <artifactId>mybatis-paginator</artifactId>
    </dependency>
    <dependency>
      <groupId>com.github.pagehelper</groupId>
      <artifactId>pagehelper</artifactId>
    </dependency>
    <!-- MySql -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
    </dependency>
    <!--     -->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
    </dependency>

  </dependencies>
</project>
service 서브 모듈 의존 과 mapper 서브 모듈,pom.xml 상세 한 것 은 다음 과 같 습 니 다.

<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">
  <parent>
    <artifactId>taotao-manager</artifactId>
    <groupId>cn.william</groupId>
    <version>1.0-SNAPSHOT</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>taotao-manager-service</artifactId>
  <packaging>jar</packaging>

  <name>taotao-manager-service</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <!--    mapper    -->
    <dependency>
      <groupId>cn.william</groupId>
      <artifactId>taotao-manager-mapper</artifactId>
      <version>1.0-SNAPSHOT</version>
    </dependency>
    <!-- Spring -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-beans</artifactId>
    </dependency>
    ...(  )
  </dependencies>
</project>
웹 서브 모듈 의존 및 service 서브 모듈,pom.xml 상세 내용 은 다음 과 같 습 니 다.

<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/maven-v4_0_0.xsd">
  <parent>
    <artifactId>taotao-manager</artifactId>
    <groupId>cn.william</groupId>
    <version>1.0-SNAPSHOT</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <artifactId>taotao-manager-web</artifactId>
  <packaging>war</packaging><!--  war -->
  <name>taotao-manager-web Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <!--    service -->
    <dependency>
      <groupId>cn.william</groupId>
      <artifactId>taotao-manager-service</artifactId>
      <version>1.0-SNAPSHOT</version>
    </dependency>
    ...(  )
  </dependencies>
  <build>
    <finalName>taotao-manager-web</finalName>
  </build>
</project>
실행 항목
index.jsp 만 들 기
이로써 프로젝트 생 성 이 완료 되 었 습 니 다.taotao-manager-web 의 webapp 디 렉 터 리 에서 index.jsp 를 만 들 수 있 습 니 다.자세 한 내용 은 다음 과 같 습 니 다.

tomcat 플러그 인 사용 하기
프로젝트 를 실행 하기 위해 Maven 의 tomcat 플러그 인 을 사용 합 니 다.그 전에 taotao-manager 의 pom 파일 에 tomcat 플러그 인 을 설정 하 였 는 지 확인 하 십시오.

...(  )
<build>
  <!--      -->
  <plugins>
    <plugin>
      <groupId>org.apache.tomcat.maven</groupId>
      <artifactId>tomcat7-maven-plugin</artifactId>
      <configuration>
        <port>8080</port>
        <path>/</path>
      </configuration>
    </plugin>
  </plugins>
</build>
...(  )
Maven Tomcat 플러그 인 웹 프로젝트 실행 설정
(1)새 설정 추가


(2)실행 을 클릭 하거나 옆 에 있 는 debug 를 클릭 합 니 다.

(3)항목 오류
오류 가 발생 했 습 니 다.common-parent 와 common-utils 가 로 컬 창고 에 설치 되 지 않 았 을 수도 있 습 니 다.common-utils 의 jar 가방 을 찾 을 수 없습니다.설치 해 야 합 니 다.

jar 가방 을 로 컬 창고 에 설치 하 기 를 기다 리 고 있 습 니 다.조금 느 릴 수 있 습 니 다.인내심 이 있 습 니 다.
설치 완료 후 다시 실행 합 니 다.다음 정보 가 나타 나 면 실행 성공 을 증명 합 니 다.

브 라 우 저 로 접근:

이로써 우리 의 프로젝트 환경 구축 이 성 공 했 고 그 다음은 실제 프로젝트 개발 이다.
설명:
① 상기 코드 에 나타 난 생략 부분 은 내용 이 길 기 때문에 생략 합 니 다.완 성 된 항목 을 보 려 면 본인 의 github,주 소 를 확인 하 십시오.
https://github.com/williamHappy/tao-shopping-mall
② 위 에 부족 한 점 이 있 으 면 양해 바 랍 니 다.왜냐하면 저 는 기술 이 유한 하고 학습 단계 에 있 기 때문에 합 리 적 인 의견 을 제시 하고 공동으로 개선 할 수 있 습 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기