Java 平台/框架/基础是如何构建的?AOSP源
我在看平台/框架/基础。它看起来像是来自Android核心的很多东西。主要是Java语言: 当我们查看其Java 平台/框架/基础是如何构建的?AOSP源,java,android,build,android-source,Java,Android,Build,Android Source,我在看平台/框架/基础。它看起来像是来自Android核心的很多东西。主要是Java语言: 当我们查看其Android.mk文件时,最有趣的部分是: $(SDK_METADATA): $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/framework-doc-stubs-metadata.zip rm -rf $(SDK_METADATA_DIR) mkdir -p $(SDK_METADATA_DIR) unzip -qo $&
Android.mk
文件时,最有趣的部分是:
$(SDK_METADATA): $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/framework-doc-stubs-metadata.zip
rm -rf $(SDK_METADATA_DIR)
mkdir -p $(SDK_METADATA_DIR)
unzip -qo $< -d $(SDK_METADATA_DIR)
$(SDK\u元数据):$(目标\u输出\u通用\u中间产品)/PACKAGING/framework-doc-stubs-METADATA.zip
rm-rf$(SDK\u元数据\u目录)
mkdir-p$(SDK\u元数据\u DIR)
解压-qo$<-d$(SDK\u元数据\u目录)
我试图了解如何以及如何从回购协议中构建。很明显,这个makefile中没有构建任何东西,主要是因为java代码是从ART构建的。那么,发生了什么事
它看起来像是从以下位置解压文件:SDK\u METADATA\u DIR:=$=$(调用intermediates DIR for,PACKAGING,framework doc stubs METADATA,,COMMON)
,但它没有做更多的事情
这个回购最终是如何建立的?文件中定义了更有趣的目标 有多个目标是从该存储库构建的,因此请查看名称以“framework”开头的
java_库
目标,以及目标上的注释,以找到您需要的内容
// This "framework" module is NOT installed to the device. It's
// "framework-minus-apex" that gets installed to the device. Note that
// the filename is still framework.jar (via the stem property) for
// compatibility reason. The purpose of this module is to provide
// framework APIs (both public and private) for bundled apps.
// "framework-minus-apex" can't be used for the purpose because 1)
// many apps have already hardcoded the name "framework" and
// 2) it lacks API symbols from updatable modules - as it's clear from
// its suffix "-minus-apex".
文件中定义了更有趣的目标 有多个目标是从该存储库构建的,因此请查看名称以“framework”开头的
java_库
目标,以及目标上的注释,以找到您需要的内容
// This "framework" module is NOT installed to the device. It's
// "framework-minus-apex" that gets installed to the device. Note that
// the filename is still framework.jar (via the stem property) for
// compatibility reason. The purpose of this module is to provide
// framework APIs (both public and private) for bundled apps.
// "framework-minus-apex" can't be used for the purpose because 1)
// many apps have already hardcoded the name "framework" and
// 2) it lacks API symbols from updatable modules - as it's clear from
// its suffix "-minus-apex".