我的 android maven 依赖树中的额外依赖
Extra dependency in my android maven dependency tree
我想弄清楚为什么 Maven 要添加此依赖项:
com.android.support:support-v4:jar:21.0.0:system
在我的依赖树中。它位于树的顶层,不在任何其他依赖项之下,这意味着我应该能够在 pom.xml?
好吧,它不在那里,也不在我项目的其他任何地方。它也不存在于我的任何其他依赖项下作为传递依赖项。
运行
mvn dependency:tree
启用调试后只给我这 2 行额外的内容:
[DEBUG] testArtifact: artifact=com.android.support:support-v4:jar:21.0.0:system
[DEBUG] includeArtifact: artifact=com.android.support:support-v4:jar:21.0.0:system
有什么想法吗?
编辑:android-maven-plugin 是否有可能在我的依赖树中添加任何东西?
它不是来自 android-maven-plugin (AMP),而是来自 aar 依赖项。
AMP 知道如何处理 'aar'。
您的 android 库 (aar) 之一将 support-v4 库作为内部 jar(换句话说,它包含在 libs 文件夹内的 aar 中)
运行 mvn compile 和 mvn 的前几行将向您显示包含此 jar 的库的警告。
您有 2 个选择:
- 要求该库的制作者不要在 aar 中提供 support-v4,而是在构建中添加依赖项。gradle/pom。xml
- 永远不要通过将 includeLibsJarsFromAar 标志设置为 false 来包含来自 aar 的任何内部 jar,但是当你自己包含 support-v4 lib 时你会遇到问题,因为它包含内部 jar
我想弄清楚为什么 Maven 要添加此依赖项:
com.android.support:support-v4:jar:21.0.0:system
在我的依赖树中。它位于树的顶层,不在任何其他依赖项之下,这意味着我应该能够在 pom.xml? 好吧,它不在那里,也不在我项目的其他任何地方。它也不存在于我的任何其他依赖项下作为传递依赖项。
运行
mvn dependency:tree
启用调试后只给我这 2 行额外的内容:
[DEBUG] testArtifact: artifact=com.android.support:support-v4:jar:21.0.0:system
[DEBUG] includeArtifact: artifact=com.android.support:support-v4:jar:21.0.0:system
有什么想法吗?
编辑:android-maven-plugin 是否有可能在我的依赖树中添加任何东西?
它不是来自 android-maven-plugin (AMP),而是来自 aar 依赖项。 AMP 知道如何处理 'aar'。 您的 android 库 (aar) 之一将 support-v4 库作为内部 jar(换句话说,它包含在 libs 文件夹内的 aar 中)
运行 mvn compile 和 mvn 的前几行将向您显示包含此 jar 的库的警告。
您有 2 个选择:
- 要求该库的制作者不要在 aar 中提供 support-v4,而是在构建中添加依赖项。gradle/pom。xml
- 永远不要通过将 includeLibsJarsFromAar 标志设置为 false 来包含来自 aar 的任何内部 jar,但是当你自己包含 support-v4 lib 时你会遇到问题,因为它包含内部 jar