최근에 분산 프로젝트의 개발을 배웠다는 점을 감안할 때, 나는 Intellij 아이디어를 사용하여 Maven을 기반으로 다중 모듈 프로젝트를 만드는 실제 개발에 대해 이야기 할 것입니다. 부적절한 측면이있을 수 있지만 프로젝트를 진행할 수 있습니다. 모든 단점을 제시하고 함께 토론하십시오.
먼저 최종 프로젝트의 프로젝트 디렉토리를 보여 드리겠습니다.
디렉토리 구조에 대한 간단한 소개 :
common-parent 는 모든 프로젝트의 학부모 프로젝트로 주로 JAR 패키지 및 모든 프로젝트에서 사용하는 버전을 관리하는 데 사용됩니다.
common-utils 는 부모 프로젝트를 상속하는 공개 도구 수업 프로젝트이며 다른 프로젝트에서 사용할 JAR 패키지로 표시됩니다.
taotao-manager 는 부모 프로젝트에서 물려받는 프로젝트입니다.
taotao-manager-pojo Taotao-Manager에 의존하고 JAR 패키지로 나뉘어 진 우리 프로젝트의 하위 모듈입니다.
taotao-manager-mapper 우리 자신의 프로젝트의 하위 모듈이며 Taotao-Manager-Pojo에 따라 JAR 패키지로 나뉩니다.
taotao-manager-service 는 우리 자신의 프로젝트의 하위 모듈이며 Taotao-Manager-Mapper에 따라 달라지며 JAR 패키지로 만들어집니다.
taotao-manager-web 우리 자신의 프로젝트의 하위 모듈이며 Taotao-Manager-Service에 달려 있으며 전쟁 패키지로 결합됩니다.
다음은 특정 작업입니다.
1. 먼저 Intellij 아이디어를 열고 아래 단계를 따르십시오.
또는 처음으로 열린 아이디어,
2. Creation Directory로 이동하여 빈 프로젝트를 선택하십시오.
3. 새 프로젝트 페이지로 이동하여 프로젝트 이름을 채우고 프로젝트 위치를 선택한 후 마감을 클릭하십시오.
아이디어가로드하고 다음 단계로 진행할 때까지 기다립니다.
4. 파일> 새> 모듈을 선택하고 새 모듈 페이지를 입력하십시오.
5. 새 모듈 페이지에서 아래 단계를 따르십시오.
6. 조직 이름 및 프로젝트 이름 및 버전 번호를 작성하십시오.
7. 로컬 Maven 디렉토리 및 Maven 저장소 구성 파일 구성
8. 부모 프로젝트 생성의 마지막 단계, 모듈의 이름을 지정하고, 작업 디렉토리를 선택하고, 완료를 선택하십시오.
POM 파일 생성을 기다리면 포장 방법을 POM으로 수정해야합니다. 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/0.0.0.0 http://maven.apache.org/xsd/maven-4.0.xsd "> <modelversion> 4.0.0 </modelversion> <groupid> cn.william </groupid> <artifactid> common-parent </artifactid> <1.0-snap </version> <packaging the moblization> <! <name> Common-Parent </name> <url> http://maven.apache.org </url> <!-종속성 버전 번호의 중심 정의-> <properties> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> <junit.version> 4.12 </junit. <pectionencymanagement> <pectinements> <!-시간 조작 구성 요소-> <pectionency> <groupid> joda-time </groupId> <artifactid> joda-time </artifactid> version> $ {joda-time.version} </version> </dependency> ... </finalencymanagement> <finalname> $ {project.artifactid} <plugins> <!-리소스 파일 카피 플러그인-> <plugin> <groupid> org.apache.maven.plugins </groupId> <artifactid> maven-resources-plugin </artifactid> <bersion> 2.7 </version> <configuration> <concoding> utf-8 </encofin-- </configuration> </configuration> </java. <Plugin> <groupId> org.apache.maven.plugins </groupId> <ArtifactId> Maven-Compiler-Plugin </artifactid> <bersion> 3.5.1 </version> <configuration> <source> 1.8 </source> </source> </source> </flugin> </configuration> </configuration> </빌드> </project> 먼저, 공개 도구 클래스는 Parent Project Common-Parent에서 상속됩니다.
주목할만한 점은 프로젝트가 하위 모듈로 나타나려면 (Eclipse의 개발과 유사) 공통점을 만드는 데 주목해야 할 단계가 있다는 것입니다.
다음 단계에 특별한주의를 기울이면이 단계는 디렉토리 구조에 영향을 미칩니다.
또한 프로젝트의 패키지 방법은 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/0.0.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <부모> <artifactid> Common-Parent </artifactid> <groupid> cn.william </groupid> <bersion> 1.0-snapshot </version> <allativePath> ../ common-parent/pom.xml <modeversion> 4.0.0 </modelversion> <artifactid> common-utils </artifactid> <packaging> jar </packaging> <!-jar package-> <name> common-utils </name> <url> http://maven.apache.org </url> <properties> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> </properties> <!-Jar Package의 종속성-> <pectionies> <!-시간 조작 구성 요소-> <prevency> <groupId> joda-time </groupid> <artifactid> joda-time </arepictid> ... </종속성> </project>
개발 프로젝트 Taotao-Manager를 만듭니다. 창조 단계는 위와 동일합니다. 또한 공통된 부모를 물려 받고 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/0.0.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <부모> <artifactid> Common-Parent </artifactid> <groupid> cn.william </groupid> <bersion> 1.0-snapshot </version> <allativePath> ../ common-parent/pom.xml <ModelVersion> 4.0.0 </modelversion> <artifactid> taotao-manager </artifactid> <packaging> pom </packaging> <name> taotao-manager </name> <url> http://maven.apache.org </url> <modules> <moduao-manager </modo-module> <Module> Taotao-Manager-Mapper </module> <module> Taotao-Manager-Service </module> <module> Taotao-Manager-web </module> <properties> <profert.build.sourceencoding> utf-8 </project.build.souroding> <pectionency> <groupId> CN.William </groupId> <artifactid> common-utils </artifactid> <버전> 1.0-snapShot </version> </fectionement> </fectionements> <빌드> <!-플러그인 구성-> <Plugin> <groupId> org.apache.tomcat.maven </groupid> <Artifactid> tomcat7-maven-plugin </artifactid> <configuration> <port> 8080 </port> <path>/</path> </configuration> </plugin> </plugins> </build> </project>
다음과 같이 Taotao-Manager-Pojo, Mapper, Service, Web 등과 같은 하위 모듈을 만듭니다.
마우스 오른쪽 버튼을 클릭하여 Taotao-Manager, 새로운 모듈 선택,
이 단계에서는 공통점을 만들 때와 달리 Taotao-Manager 디렉토리에 서브 모듈을 추가하는 것입니다.
Maven의 관련 구성은 기본값을 유지하십시오.
하위 모듈이있는 디렉토리에주의하십시오.
Taotao-Manager 아래에 다른 서브 모듈을 만듭니다
위에서 언급했을 때, 우리는 Taotao-Manager-Pojo 하위 모듈을 만듭니다. 다른 세 가지 하위 모듈은 약간의 차이로 그들과 유사하게 생성됩니다. Taotao-Manager-Web 하위 모듈을 만들 때 Maven 프로젝트의 유형이 다음과 같이 선택됩니다.
하위 모듈의 POM 파일을 수정하십시오
포장 된 서브 모듈 Pojo, Mapper 및 Service의 패키지 방법은 모두 항아리이며 웹 하위 모듈 만 전쟁 패키지로 포장됩니다.
pojo submodule, 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/0.0.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <부모> <artifactid> taotao-manager </artifactid> <groupid> cn.william </groupid> </groupid> </groupid> </groupid> </parent> <modelversion> 4.0.0 </modelverion> <artifactid> taotao-manager-pojo </artifactid> <packaging> jar </packaging> <name> taotao-manager-pojo </name> <url> http://maven.apache.org </url> <profferies> <project.build.sourceododing> utf-8 </puild.build </속성> </project>
매퍼 하위 모듈은 포조 서브 모드에 따라 다릅니다. 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/0.0.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <부모> <artifactid> taotao-manager </artifactid> <groupid> cn.william </groupid> </groupid> </groupid> </groupid> </parent> <modelversion> 4.0.0 </modelverion> <artifactid> taotao-manager-mapper </artifactid> <packaging> jar </packaging> <name> taotao-manager-mapper </name> <url> http://maven.apache.org </url> <profert.build.sourceencoding> utf-8 </procedities> <pectionies> <-종속성 및 pojo 하위 모듈-> <pectionency> <groupid> cn.william </groupid> <artifactid> taotao-manager-pojo </artifactid> <version> 1.0-snapshot </version> </dependency> <!-mybatis-> groupid> org.mybatis> org. <아티 팩트> mybatis </artifactid> </fectionency> <pectionency> <groupid> org.mybatis </groupbatis </groupid> <artifactid> mybatis-spring </artifactid> </dependency> <groupid> com.github.miemedev </groupid> </artifactid> mybatinator <pectionency> <groupId> com.github.pageHelper </groupId> <artifactID> pageHelper </artifActId> </fectionency> <!-mysql-> <pectionency> <groupId> mysql </groupId> <teplence> mySQL-Connector-Java </inpectency> <! <! <! <groupid> com.alibaba </groupid> <artifactid> druid </artifactid> </fectionency> </fectencies> </project>
서비스 하위 모듈은 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/0.0.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <부모> <artifactid> taotao-manager </artifactid> <groupid> cn.william </groupid> </groupid> </groupid> </groupid> </parent> <modelversion> 4.0.0 </modelverion> <artifactid> taotao-manager-service </artifactid> <packaging> jar </packaging> <name> taotao-manager-service </name> <url> http://maven.apache.org </url> <profertie.build.sourceoding> utf-8 </uild.build.build.build.build.build.build.build.build.build.build.build.build </properties> <pectemencies> <!-종속성 및 맵퍼 하위 모듈-> <pectionency> <groupid> cn.william </groupid> <artifactid> taotao-manager-mapper </artifactid> <bersion> 1.0-snapshot </version> </dependency> <!-spring-> <group org. <artifactid> spring-context </artifactid> </fectionency> <pectionency> <groupid> org.springframework </groupid> <artifactid> spring-beans </artifactid> </fectionency> ... (생략) </dependencies> </project>
웹 하위 모드는 서비스 하위 모드에 따라 다르며 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/0.0.0.0 http://maven.apache.org/maven-v4_0_0.xsd "> <부모> <artifactid> taotao-manager </artifactid> <groupid> cn.william </groupid> <버전> 1.0-snapshot </version> </parent> <moderverion> 4.0.0 </modelversion> <Artifactid> Taotao-Manager-web </artifactid> <par </packaging> </packaging> <!-전쟁 패키지-> <name> taotao-manager-web maven webapp </name> <Url> http://maven.apache.org </url> <selection> <! <groupid> cn.william </groupid> <artifactid> taotao-manager-service </artifactid> <bersion> 1.0-snapshot </version> </dependency> ... (생략) </dependencies> <build> <finalname> taotao-manager-web </finalname> </project>
index.jsp를 작성하십시오
이 시점에서 프로젝트 제작이 완료되었습니다. Taotao-Manager-Web의 WebApp 디렉토리에서 index.jsp를 만들 수 있습니다. 세부 사항은 다음과 같습니다.
Tomcat 플러그인 사용
우리는 Maven의 Tomcat 플러그인을 사용하여 프로젝트를 실행합니다. 이 전에 Taotao-Manager의 POM 파일에서 Tomcat 플러그인을 구성하십시오.
... (생략) <빌드> <!-구성 플러그인-> <plugin> <groupid> org.apache.tomcat.maven </groupid> <artifactid> tomcat7-maven-plugin </artifactid> <configuration> <port> 8080 </port> <path>/pathitation> </plugin> </plugin> </plugin>
웹 프로젝트를 실행하도록 Maven Tomcat 플러그인을 구성하십시오
(1) 새 구성 추가
(2) 실행을 클릭하거나 옆에 디버그를 클릭하십시오.
(3) 문제의 오류
오류가 발생했는데, 이는 현지 저장소에 일반 부모 및 공통점이 설치되지 않았을 수 있습니다. 오류는 Common-utils JAR 패키지를 찾을 수 없으므로 설치해야한다는 것입니다.
JAR 패키지를 로컬 리포지토리에 설치하기를 기다리는 것은 조금 느리고, 참을성이있을 수도 있습니다. . .
설치가 완료된 후 다시 실행하면 다음 정보가 작업이 성공했음을 증명하는 것으로 보입니다.
브라우저를 통한 액세스 :
이 시점에서 프로젝트 환경은 성공적으로 구축되었으며 다음 단계는 실제 프로젝트 개발입니다.
성명:
① 위 코드의 생략 된 부분과 관련하여 콘텐츠가 너무 길기 때문에 생략됩니다. 완성 된 프로젝트를 보려면 내 github 주소를 확인하십시오.
https://github.com/williamhappy/tao-shopping-mall
② 위의 단점을 인정하십시오. 결국, 내 기술은 제한되어 있으며 학습 단계에 있습니다. 또한 합리적인 의견을 제시하고 함께 개선 할 수 있습니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.