Bre*_*siu 5 ant android build gradle android-manifest
我有Ant
很多模块的项目。我正在尝试将一些模块合并成更大的模块并减少它们的数量。
我可以android manifest merger
作为独立应用程序运行并合并指定为参数的清单吗?
例如我有模块: A , B , C , D , E
我需要[A] , [B]成为[AB]模块,而[C] , [D] , [E]成为[CDE]
我需要这个,因为我正在编写Python
脚本,这将有助于迁移到Gradle
. 脚本将扫描目录,并使用所有文件、复制的类和资源创建新项目。我希望它是通用的。
好的,我想回答我自己的问题。
manifest-merger
被java
库放置在ANDROID_HOME/tools/lib/manifest-merger.jar
为了jar
用作独立应用程序,我从google platform tools
存储库克隆了项目:
git clone --depth=1 https://android.googlesource.com/platform/tools/base
Manifst-Merger 源代码位于 base/build-system/manifest-merger
您也可以在grepcode找到代码。
我将代码提取到maven
项目中,解决了所有外部依赖项并创建了可以克隆并用作独立应用程序的项目:
https://github.com/Bresiu/android-manifest-merger
用法:
git clone git@github.com:Bresiu/android-manifest-merger.git
mvn install
java -jar target/manifest-merger-jar-with-dependencies.jar --main mainAndroidManifest.xml
--log [VERBOSE, INFO, WARNING, ERROR]
--libs [path separated list of lib's manifests]
--overlays [path separated list of overlay's manifests]
--property [PACKAGE | VERSION_CODE | VERSION_NAME | MIN_SDK_VERSION | TARGET_SDK_VERSION | MAX_SDK_VERSION=value]
--placeholder [name=value]
--out [path of the output file]
我使用了这个库如下:
java -jar target/manifest-merger-jar-with-dependencies.jar --main <path_to_main_manifest> --libs <path_to_libs_manifests_divided by ':'> --out <output_manifest> --log WARNING
归档时间: |
|
查看次数: |
775 次 |
最近记录: |