Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 平台/框架/基础是如何构建的?AOSP源_Java_Android_Build_Android Source - Fatal编程技术网

Java 平台/框架/基础是如何构建的?AOSP源

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核心的很多东西。主要是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 $< -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".