2026년부터 트렁크 안정 개발 모델과 일치하고 생태계의 플랫폼 안정성을 보장하기 위해 2분기와 4분기에 AOSP에 소스 코드를 게시합니다. AOSP를 빌드하고 기여하려면 aosp-main 대신 android-latest-release를 사용하는 것이 좋습니다. android-latest-release 매니페스트 브랜치는 항상 AOSP에 푸시된 최신 버전을 참조합니다. 자세한 내용은 AOSP 변경사항을 참고하세요.
Starlark에서 명령문 포함 및 상속
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
make에서 include 문은 변수가 있는 파일 경로를 포함할 수 있으며 마이너스 접두사가 붙으면 존재하지 않는 파일을 무시합니다. 제품 구성에 해당하는 것은 inherit-product-if-exists 기능입니다. Starlark는 문자열 리터럴로 식별되는 파일과 함께 load 문을 사용하며 파일이 없으면 Starlark에서 오류가 발생합니다.
이 제한을 해결하기 위해 Starlark 변환기는 다음을 수행합니다.
- 변수가 포함된 경로와 일치할 수 있는 모든 Makefile을 찾습니다.
- 그들 모두에 대해 Starlark
load 문을 내보냅니다. - 런타임에 올바른 것을 선택합니다.
생성된 Starlark 코드는 하나만 실행되더라도 일치하는 모든 경로를 나열하므로 부자연스러워 보일 수 있습니다.
include / inherit-product 문에서 변수 참조를 제거하는 것이 좋습니다.
변수 참조를 피할 수 없는 경우 변수 부분을 최소화하십시오. 예를 들어:
MY_DIR := path/to/$(TARGET_PRODUCT)
include $(MY_DIR)/file.mk
변환기가 소스 트리의 각 file.mk 에 대해 load 문을 생성하도록 하는 반면,
include path/to/$(TARGET_PRODUCT)/file.mk
path/to 아래의 file.mk 파일로 제한합니다. 물론 TARGET_PRODUCT 의 사용을 제거하는 것도 이상적입니다.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2022-06-06(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2022-06-06(UTC)"],[],[]]