gradle 기본 지식

5964 단어
ps: 사실은 일찍부터 여기에 글 을 쓰 려 고 했 는데 다른 곳 에서 블 로 그 를 여러 번 옮 겼 지만 여러 번 옮 겼 지만 성공 하지 못 했 습 니 다.슬 프 고 재촉 하 다.이 편의 내용 은 주로 읽 는 것 이다http://android.jobbole.com/71999/이 문장 은 후에 정리 해 왔 다.
  • gradle 에는 두 가지 개념 이 있 습 니 다. 프로젝트, 임무 프로젝트: 우리 의 구축 결과 물 (예 를 들 어 jar) 또는 실시 결과 물 (응용 프로그램 을 생산 환경 에 배치) 을 말 합 니 다. 한 프로젝트 는 하나 또는 여러 개의 임 무 를 포함 합 니 다.작업: 분할 할 수 없 는 최소 작업 단원 을 가리 키 며 구축 작업 을 수행 합 니 다 (예 를 들 어 프로젝트 를 컴 파일 하거나 테스트 를 수행 합 니 다).매번 gradle 구축 에는 하나 이상 의 항목 이 포함 되 어 있 습 니 다. Build (1) - (n) procject (1) - (n) task
  • gradle 프로필
  • Gradle 구축 스 크 립 트 (build. gradle) 는 프로젝트 와 작업 을 지정 합 니 다.Gradle 속성 파일 (gradle. properties) 은 구축 속성 을 설정 하 는 데 사 용 됩 니 다.Gradle 설정 파일 (gradle. settings) 은 하나의 프로젝트 만 구축 하 는 데 있어 서 선택 할 수 있 습 니 다. 만약 에 우리 의 구축 에 하나의 프로젝트 가 더 포함 되 어 있다 면 그것 은 필수 적 입 니 다. 왜냐하면 이것 은 어떤 프로젝트 가 구축 에 참여 하 는 지 설명 하기 때 문 입 니 다.모든 다 중 프로젝트 의 구축 은 프로젝트 구조의 루트 디 렉 터 리 에 설정 파일 을 추가 해 야 합 니 다.
  • gradle 플러그 인, 모든 유용 한 기능 은 gradle 플러그 인 이 제공 합 니 다. 다음은 gradle 표준 플러그 인 주소 입 니 다.http://www.gradle.org/docs/current/userguide/standard_plugins.html

  • 플러그 인 은 프로젝트 에 새 작업 을 추가 하여 새로 추 가 된 작업 에 기본 설정 을 제공 할 수 있 습 니 다. 이 기본 설정 은 프로젝트 에 새로운 약속 (예 를 들 어 원본 파일 위치) 을 추가 합 니 다.새로운 속성 을 추가 하면 플러그 인의 기본 설정 속성 을 덮어 쓸 수 있 습 니 다.프로젝트 에 새로운 의존 도 를 추가 합 니 다.
  • 플러그 인의 사용 방식 은 이름 이나 유형 을 통 해 지정 할 수 있 습 니 다.
  •  apply plugin: ‘android' apply plugin: ‘com.android’

    자바 프로젝트 의 기본 항목 구 조 는 다음 과 같 습 니 다.
    src / main / 자바 디 렉 터 리 는 프로젝트 의 소스 코드 를 포함 합 니 다.src / main / resources 디 렉 터 리 는 프로젝트 의 자원 (예 를 들 어 속성 파일) 을 포함 합 니 다.src / test / resources 디 렉 터 리 에는 테스트 자원 이 포함 되 어 있 습 니 다.
    우리 가 구축 한 모든 파일 은 build 디 렉 터 리 에서 생 성 됩 니 다. 이 디 렉 터 리 는 아래 의 하위 디 렉 터 리 를 포함 합 니 다.
    classes 디 렉 터 리 는 컴 파일 된 class 파일 을 포함 합 니 다.libs 디 렉 터 리 는 생 성 된 jar 나 war 파일 을 포함 합 니 다.
  • 명사 해석
  • assemble 작업 은 프로그램의 소스 코드 를 컴 파일 하고 Jar 파일 을 압축 하여 생 성 합 니 다. 이 작업 은 유닛 테스트 를 수행 하지 않 습 니 다.프로젝트 패키지 에 필요 한 작업 집합 만 수행 합 니 다.build 작업 은 완전한 프로젝트 구축 을 수행 합 니 다.작업 수행 프로젝트 패키지 에 필요 한 작업 집합 과 자동화 테스트 를 수행 합 니 다.copile 자바 작업 은 프로그램의 소스 코드 를 컴 파일 합 니 다.
    assemble, build 두 명령 은 build / libs 디 렉 터 리 에 file - java - project. jar 파일 을 만 듭 니 다.기본 으로 만 든 Jar 파일 이름 은 이 모드 에서 결 정 됩 니 다. [procject name]. jar 입 니 다. 또한 프로젝트 의 기본 이름 은 디 렉 터 리 이름과 일치 합 니 다.따라서 프로젝트 디 렉 터 리 이름 이 first - java - project 라면 만 든 Jar 파일 이름 은 first - java - project. jar 입 니 다.
    gradle tasks 명령 은 실행 가능 한 작업 과 설명 을 위 한 전체 목록 을 얻 을 수 있 습 니 다.
  • 예제: 자바 플러그 인 으로 jar 패 키 지 를 구축 합 니 다. gradle 은 다음 과 같 습 니 다. 우 리 는 Jar 작업 을 추가 합 니 다. 모든 Jar 대상 은 하나의 manifest 속성 입 니 다. 이 속성 은 Manifest (매 니 페스트) 입 니 다.http://www.gradle.org/docs/current/javadoc/org/gradle/api/java/archives/Manifest.html) 의 실례생 성 된 Jar 파일 의 주 클래스 를 설정 할 수 있 습 니 다. Manifest 인터페이스의 attributes () 방법 을 사용 할 수 있 습 니 다.키 쌍 을 포함 하 는 맵 구 조 를 사용 하여 manifest 파일 에 추 가 된 속성 집합 을 지정 합 니 다.Main - Class 속성의 값 을 설정 하여 프로그램의 입구 점 을 지정 할 수 있 습 니 다: java - jar first - java - project. jar
  • apply plugin: 'java'
    
    jar {
        manifest {
            attributes 'Main-Class':'xxx.HelloWorld'
        }
    }
  • 관리 창고 관리 에 의존 합 니 다. 창 고 는 의존 하 는 용기 입 니 다. 모든 항목 은 하나 이상 의 창 고 를 가지 고 있 습 니 다. gradle 은 Ivy 창고, Maven 창고, Flat directory 창고 Ivy 창 고 를 지원 합 니 다. url 또는 로 컬 파일 시스템 주 소 를 통 해 Ivy 창 고 를 우리 의 구축 에 추가 할 수 있 습 니 다.참고 입력:http://www.gradle.org/docs/current/userguide/dependency_management.html#sec:ivy_repositories eg:
  • repositories {
        ivy {
            url  "http://ivy.petrikainulainen.net/repo"
        }
    }
    repositories {
        ivy {       
            url "../ivy-repo"
        }

    Maven 창고: Ivy 창고 의 사용 방식 과 유사 합 니 다. ivy 를 Maven 으로 바 꾸 면 됩 니 다. 주 소 는 Maven 에 대응 하 는 주소 로 바 꿉 니 다. Maven 창고 에 가입 할 때 Gradle 은 세 가지 '별명' 을 제공 하여 사용 할 수 있 습 니 다. 각각:http://www.gradle.org/docs/current/userguide/dependency_management.html#sub:maven_repo
    mavenCentral () 별명 은 Central Maven 2 창고 에서 의존 한 다 는 뜻 이다.jcenter () 별명 은 Bintary 's JCenter Maven 창고 에서 의존 을 얻 었 다 는 뜻 이다.mavenLocal () 별명 은 로 컬 Maven 창고 에서 의존 한 다 는 뜻 입 니 다.
    예 를 들 어 mavenCentral () 을 사용 합 니 다.
    repositories { mavenCentral() }

    Flat 디렉토리 창고:http://www.gradle.org/docs/current/userguide/dependency_management.html#sec:flat_dir_resolver
    repositories {
        flatDir {
            dirs “lib” //    lib     ,       , libA, libB
        }
    }
  • 설정 의존: 프로젝트 창 고 를 설정 한 후 의존 도 를 설명 할 수 있 습 니 다. 의존 도 를 지정 하고 필요 한 의존 도 를 설명 할 수 있 습 니 다
  • Gradle 에서 의존 은 지 정 된 이름 에 따라 분 류 됩 니 다. 이 분 류 는 설정 항목 이 라 고 합 니 다. 설정 항목 성명 항목 의 외부 의존 을 사용 할 수 있 습 니 다.자바 플러그 인 은 몇 가지 의존 설정 항목 을 지정 하 였 습 니 다. 설명 은 다음 과 같 습 니 다. 프로젝트 의 소스 코드 가 컴 파일 될 때,
    copile 설정 항목 의 의존 은 필수 입 니 다.runtime 설정 항목 에 포 함 된 의존 은 실행 할 때 필수 입 니 다.testCompile 설정 항목 에 포 함 된 컴 파일 항목 에 의존 하 는 테스트 코드 는 필수 입 니 다.test Runtime 설정 항목 에 포 함 된 의존 은 테스트 코드 를 실행 할 때 필수 입 니 다.archives 설정 항목 에는 프로젝트 생 성 파일 (예: Jar 파일) 이 포함 되 어 있 습 니 다.default 설정 항목 에는 실행 에 필요 한 의존 도 를 포함 합 니 다.
    성명 설정 의존: 가장 보편적 인 의존 은 외부 의존 이 라 고 하 는데 이 의존 은 외부 창고 에 저 장 됩 니 다.외부 의존 도 는 다음 속성 으로 지정 할 수 있 습 니 다:
    group 속성 은 의존 하 는 그룹 을 지정 합 니 다 (Maven 에서 groupId 입 니 다).name 속성 은 의존 하 는 이름 을 지정 합 니 다. (Maven 에서 artifactId 입 니 다.)version 속성 은 외부 의존 버 전 을 지정 합 니 다 (Maven 에서 version 입 니 다).
    eg: 그룹 은 groupA 이 고 이름 은 namea 이 며 verion 은 1.0 이 며 스 크 립 트 에 의존 하 는 것 은:
    dependencies {
        compile group:’groupA', name: ‘nameA', version: ‘1.0//       , compile        testCompile 
        compile ‘groupA:nameA:1.0' }

    좋은 웹페이지 즐겨찾기