일반적으로 Maven을 사용하여 프로젝트를 구축 할 때 응용 프로그램 프로젝트를 여러 개의 작은 모듈로 나눕니다.
Gradle 프로젝트에는 둘 이상의 구성 요소가 있으며 Multi-Project 빌드라고도합니다.
먼저 멀티 프로 버젝트 빌드를 만듭니다.
mkdir cmdgradleproj && cd cmdgradleprojgradle init
현재
d : /cmdgradleproj> 디렉토리에서 실행 : tree /f
프로젝트 구조는 다음과 같습니다.
gradle.gradle gradlew gradlew.bat│ settings.gradle│ ├ ├ ├ ├ ├ ├인지 율어. stragper gradle-wrapper.jar gradle-wrapper.properties
그런 다음 여러 모듈을 만듭니다. 여기에서 코어 및 웹 모듈을 예제로 사용하고 먼저 네 가지 디렉토리를 만듭니다 (테스트 폴더는 테스트 클래스를 작성하는 데 사용됩니다).
MKDIR CORE/SRC/MAIN/JAVAMKDIR CORE/SRC/MAIN/TESTMKDIR WEB/SRC/MAIN/JAVAMKDIR 웹/SRC/메인/리소스
코어 모듈 : 프로그램의 다른 모듈에서 사용할 수있는 몇 가지 공통 구성 요소가 포함되어 있습니다. 예에서는 하나의 클래스 만 있습니다. MessagesVice 클래스는 'Hello World!'를 반환합니다. 끈. 이 모듈에는 Junit 4.11과 Commons-Lang3의 두 가지 종속성이 있습니다.
웹 모듈 : 모듈에는 프로그램의 시작 인 Helloworld 클래스가 포함되어 있습니다. MessageService 객체에서 정보를 얻고 수신 된 정보를 로그 파일에 씁니다. 모듈에는 두 가지 종속성이 있습니다. 코어 모듈이 필요하고 Log4J를 로그로 사용합니다.
필요한 디렉토리를 만들었으므로 다음 단계는 Gradle 빌드를 구성하여 먼저 멀티 프로 젝트 빌드에 포함 된 프로젝트를 구성하는 것입니다.
다음 단계를 통해 다중 프로젝트 빌드에 포함 된 프로젝트를 구성 할 수 있습니다.
1. settings.gradle 파일 루트 프로젝트의 루트 디렉토리에 있습니다. 다중 프로젝트 Gradle 빌드에는 다중 프로젝트 빌드에 포함 된 프로젝트가 표시 되므로이 파일이 포함되어야합니다.
2. 웹 프로젝트 및 핵심 프로젝트가 다중 프로젝트 빌드에 포함되어 있는지 확인하십시오.
우리의 settings.gradle 파일은 다음과 같습니다.
'코어'포함
'웹'포함
약어 : '코어', '웹'포함
루트 디렉토리의 build.gradle을 수정하십시오.
// 모든 하위 프로젝트 서브 프로 젝트의 일반적인 구성 {플러그인 적용 : 'Java'// 플러그인 적용 : 'Eclipse'적용 플러그인 : 'Idea'버전 = 1.0 '// JVM 버전 번호가 필요합니다. javadoc]*. 옵션*.Encoding = 'utf-8'// 버전 번호 정의 {springversion = '4.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3. 여기에 정의 된*.exclude 그룹 : 'commons-httpclient'all*.exclude 그룹 : 'commons-logging'all*.exclude 그룹 : 'commons-beanutils', module : 'commons-beanutils'} 종속성 {// 일반 종속성 compile ( "org.springframe 텍스트 : $ Spring-Conteor : $ Springversion", "org.springframework : spring-orm : $ springversion", "org.springframework : spring-tx : $ springversion", "org.springframework.data:spring-data-jpa:1.10.3.3.3.3.3.Release", "org.hibernate : hibernate-entitymanager : $ hibernateversion", "C3P0 : C3P0 : 0.9.1.2", "MySQL : MySQL-Connector-Java : 6.0.4", "org.slf4j : slf4j-nop : 1.7.21", "Commons-fileupload : Commons-fileupload : 1.3.2", "com.fasterxml. maven ext.jartree = filetree (dir : 'libs', 'libs', '**/*. jar') ext.rootprojectlibs = new 파일 (rootproject.rootdir, 'libs')에 존재하지 않는 JAR에 의존합니다. // 테스트 종속성 test Compile ( "org.springframework : spring-test : $ springversion", "junit : junit : 4.12")} // 현재 프로젝트에서 컴파일을위한 모든 항아리를 표시합니다. 작업 listjars (설명 : '모든 컴파일 항아리 표시.') << {configurations.compile.each {파일 파일 -> println file.name}}다음으로 Core/Build.gradle을 수정하여 핵심 모듈의 종속성을 정의 할 수 있습니다.
// JAR 패키지의 이름 ArchivesBasEname = 'Core'// 기타 구성도 정의 할 수 있습니다. 여기서, 부모 모듈의 구성은 웹 모듈의 구성을 직접 상속합니다. 따라서 Web/Build.gradle은 다음과 같이 정의됩니다. "War"종속성 {// 종속성 코어 모듈 Compile Project ( ": org.springframework : Spring-webmvc : $ springversion", "org.apache.taglibs : taglibs-standard-impl : 1.2.1") // 시스템에서 제공하는 종속성은 제공된 compile ( "javax.servlet : javax.servlet-api : 3.1.0", "javax.servlet.jsp : jsp-api : 2.2.1-b03", "javax.servlet.jsp.jstl : javax.servlet.jsp.jstl-api : 1.2.1")} task jarwithoutresources (type : jar) {basename project.name from ( "$ builddir/classe/main")} ( "$ builddir/classe/main")} ( "$ projectsonwithoutresources ("$ projects/src/main/rusts "). "*.properties"에 ( "web-inf/classe")} classpath = classpath = sourcecesets.main.output classpath filetree (dir : libsdir, 포함 : "$ {project.name}-$ {version} .jar")} task ( 'jarpath') << {configurations.runtime.resvolve () {) {)+. } println (); }3. 프로젝트를 컴파일하십시오
모든 항아리보기 :
> Gradle ListJars // 각 모듈의 종속성보기 :> Gradle : Core : 종속성> Gradle : 웹 : 종속성 // 모든 모듈 컴파일 :> Gradle 빌드
이 시간에 다음과 같이 디렉토리를 비교하십시오.
│ gradle gradlew gradlew.bat│ settings.gradle│ ├ ├가는 argradle│ · ‑ ─캠 é └ └ └ └ └얼 효르 : Cache.propertiess│ cache.properties.lock│ 파일 하스. taskArtifacts.bin│ ├───core│ │ build.gradle│ │ │ ├───build│ │ ├───libs│ │ │ core-1.0.jar│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └ └ └ └ └ 사용 용니다. └ └가는 TMP│ │ � └ └ └ │ │ │ │ │ │ │ │ │용 하여용 대위 용액 .mf│ │ │ └ └ └ └ └ 사장 효화. └ ─퀴 유장 ∎ ─ Java│ └ └ 착각 ─퀴 착 ayva│ └ └ 커 앤 ─ Java│ └ └ 담사는 Java│ · ─담 ─담 유자 └ ─ JARJARY └ └ ─담 ─ ─ JAVA │ 착용 │ │ │ │ │ │ │ │ │ │ 테. └ ──퀴는 메인 ├ ─퀴 ─평 동안입니다. ─ 안와 원료
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.