source

gradle.properties와 settings.gradle을 사용하는 경우

nicesource 2023. 1. 28. 09:29
반응형

gradle.properties와 settings.gradle을 사용하는 경우

그래들 빌드에는 3개의 파일이 있습니다.

  • build.gradle합니다.
  • gradle.properties
  • settings.gradle

문의사항

  • settings.gradle&gradle.properties
  • 을 「」에 .settings.gradle ★★gradle.properties

settings.gradle

settings.gradle은 파일 Groovy와 입니다.build.gradle만.settings.gradle는 각 개의 빌드와 ).build.gradle스크립트가 여러 프로젝트 빌드에 추가해 주세요.settings.gradle 한 쪽의 ""보다 됩니다.build.gradle스크립트와 인스턴스를 생성하기 전에 사용할 수 있습니다.따라서 객체에 대해 평가됩니다.이와 함께.Settings오브젝트를 빌드에 추가하고 명령줄()StartParameter에서 파라미터를 수정하며 오브젝트에 액세스하여 라이프 사이클 핸들러를 등록할 수 있습니다.그 결과,settings.gradle설정이 빌드 관련이며 반드시 프로젝트와 관련이 없거나 가능한 하위 프로젝트가 포함되기 전에 논리가 필요한 경우.

gradle.properties

gradle.propertiesfile은 단순한 Java 파일입니다.이 파일에는 특별한 역할이 자동으로 포함됩니다.Project그러하다문자열 값만 허용하는 단순한 키 값 저장소이므로 목록 또는 어레이를 직접 분할해야 합니다. ㅇㅇㅇㅇㄹㄹㄹㄹㄹㄹㄹㄹㄹㄹㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴgradle.properties파일을 다음 위치에 저장합니다.

  • 프로젝트 디렉터리에 직접 저장(프로젝트 관련 값용)
  • 홈에서.gradle 관련의 경우)

다중 모듈 프로젝트에는 하나의 메인 모듈과 다수의 서브 모듈이 있습니다.다음과 같은 레이아웃이 있습니다.

(root)
  +- settings.gradle       
  +- build.gradle          # optional (commonly present)
  +- gradle.properties     # optional
  +-- buildSrc/            # optional
  |     +- build.gradle    
  |     +-- src/...
  +-- build-conventions/   # optional
  |     +- settings.gradle # empty
  |     +- build.gradle
  |     +-- src/
  |           +-- myconvention.gradle
  +-- my-gradle-stuff/     # optional
  |     +- utils.gradle    # optional
  +-- sub-a/
  |     +- build.gradle
  |     +- src/
  +-- sub-b/
        +- build.gradle
        +- src/

서브모듈은 서브폴더 안쪽에 위치할 수도 있지만 settings.gradle의 코드를 변경하지 않으면 그 이름에 해당 폴더의 이름이 포함됩니다.

settings.gradle

settings은 포함된 하고 모듈할 수 설정은 입니다.1번으로 하다settings.gradle파일링할 수 있습니다.

rootProject.name = 'project-x'

include 'sub-a', 'sub-b'

설정 파일도 그루비하게 작성되어 서브모듈 조회를 커스터마이즈 할 수 있습니다.

build.gradle

이러한 파일은 모듈당 1개씩 있으며 이 모듈용 빌드 로직이 파일에는 이 모듈의 빌드 로직이 포함되어 있습니다.

서서 build.gradle메인 모듈의 파일,allprojects {} ★★★★★★★★★★★★★★★★★」subprojects {}하다

에서build.gradle서브모듈의 파일,compile project(':sub-a')하나의 서브모듈이 다른 서브모듈에 의존하도록 합니다.

gradle.properties

이는 옵션이며, 주요 목적은 gradle 자체를 실행하기 위해 사용하는 시작 옵션을 제공하는 것입니다.

org.gradle.jvmargs=-Xmx=... -Dfile.encoding=UTF-8 ...
org.gradle.configureondemand=true

이러한 값은 파일에 의해 재정의될 수 있습니다.USER_HOME/.gradle/gradle.propertiesgradle 명령줄 인수로 덮어씁니다.또한 이 파일의 빌드에 대한 환경변수를 설정할 수 있습니다.systemProp.prefix로 지정합니다.

이 파일의 모든 속성은 모든 build.gradle에서 사용할 수 있습니다.따라서 일부 프로젝트에서는 의존 버전 또는 릴리스 정보를 에 넣습니다.gradle.properties단, 이는 이 파일의 오용일 가능성이 있습니다.

내 학년/내 학년

(모든 폴더 또는 파일 이름이 가능합니다.)추가 커스텀 그래들파일을 정의하여 정의를 재사용할 수 있습니다.다른 그래들파일에 포함할 수도 있습니다.

apply from: "$rootDir/gradle/utils.gradle"

다른 장소도 있을 수 있습니다.src/gradle또는src/build/gradle

build Src/...

이 폴더는 특별하며, 그 자체로 별도의 그래들 프로젝트와 같습니다.다른 작업보다 먼저 구축되어 다른 그래들 파일에서 사용할 수 있는 기능을 제공할 수 있습니다.기술적인 이유로 이 폴더에 대한 참조에 대한 IDE 지원은 여러 파일에서 다른 위치로 공통 코드를 추출하는 다른 방법보다 훨씬 잘 작동합니다.

플러그인을 작성 및 배포하는 대신 Java, groovy 또는 kotlin에서 복잡한 사용자 정의 빌드 로직을 정의할 수 있습니다.또한 장치 테스트를 수행할 수 있으므로 사용자 지정 빌드 코드를 테스트할 때도 유용합니다.원본 폴더 구조buildSrc자바/그루비/슬린

빌드 컨벤션/...

이 요소는 옵션이며 공유되는 로직이 버전 번호와 같이 단순할 때 buildSrc의 대체 요소로 사용되며 하나의 종속성 버전 변경만으로 대규모 프로젝트의 완전한 재구축이 트리거될 필요는 없습니다.입니다만, settings. 됩니다: root settings.gradle은 다음과 같습니다.includeBuild 'build-conventions'build.gradle이 있어야 plugins {id("groovy-gradle-plugin")}.

빌드 할 수 ..gradle files 수 .plugins {id("myconvention")}.

이것은, 다음의 네트워크와 조합할 수도 있습니다.buildSrc더입니니다다

언급URL : https://stackoverflow.com/questions/45387971/when-to-use-gradle-properties-vs-settings-gradle

반응형