Grade 编译 Android 解决 Error:more than one library with package name

Grade 编译 Android 解决 Error:more than one library with package name

Error: more than one library with package name ‘com.app.XX‘
You can temporarily disable this error with android.enforceUniquePackageName=false
However, this is temporary and will be enforced in 1.0

最近在将老的项目构建成 gradle 编译,大体目录格式是:

一个主项目,依赖四个子项目,中间转换的时候,出现不少问题,最终一一解决了。

主项目 子项目 依赖
mainPro
–>ext1 –>ext2
–>ext2
–>ext3 –> ett2
–>ext4

在项目编译的时候,总是出现

more than one library with package name ‘com.app.XX‘

在网上找了一些方案,但是还是不行,最后 分析了下:more than one library with package name ‘com.app.XX’, 从含义中能明白 应该是 library 里面有两个 依赖的 包名 是一样的,最后细细排查一下,果然是 有两个包名是一样的 ext2 和 ext4 的包名是:

com.app.XX

原来是这里的原因。 重新发布 依赖工程的 ext2 的包名为:

com.app.aXX

就OK 了,但是由于 ext 3依赖 ext2, ext1也依赖 ext 2 , 所以以意味着 也要重新发布 ext1 和 ext3 。

但是这样显然很麻烦,其实依赖的时候,可以写成

compile ‘com.xxx.sdk:xxx-lib:1.0.+‘

后面修改为 1.0.+,当有最新的话,会优先选用最新的。

这次发布后,如果 ext2 还是有问题,或是修改bug 后, ext1 和 ext3 会自动获取最新的,就不需要重新发布了。

时间: 2024-10-29 20:25:57

Grade 编译 Android 解决 Error:more than one library with package name的相关文章

Cocos2d-x 3.0 编译出错 解决 error: expected ';' at end of member declaration

近期把项目移植到cocos2d-x 3.0,在整Android编译环境的时候,出现一大堆的编译出错,都是类似"error: expected ';' at end of member declaration"之类的,看了一些编译错误,都是cocos2d-x库里面的代码出错. 经过分析,怀疑可能是编译环境的问题,由于cocos2d-x使用了非常多C++11的新特性,这有可能导致老的编译器出错,看了一下NDK以下的文件以及toolchains里面的内容,windows编译器默认使用4.6,

[android] - 解决Error:(16, 0) Minimum supported Gradle version is 3.3. Current version is 2.14.1

找到项目的gradle-wrapper.properties文件打开,最后一行为 distributionUrl=https://services.gradle.org/distributions/gradle-2.14.1-all.zip 这个地方的gradle应该是gradle-3.3-all.zip 原文地址:https://www.cnblogs.com/fphuang/p/8447703.html

[转]编译Android源代码常见错误解决办法

1. 编译时出现/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../libz.so when searching for -lz PLATFORM_VERSION_CODENAME=AOSPPLATFORM_VERSION=AOSPTARGET_PRODUCT=genericTARGET_BUILD_VARIANT=engTARGET_SIMULATOR=TARGET_BUILD_TYPE

【转】Ubuntu 上编译Android出现cannot find -lstdc++解决办法

[转]Ubuntu 上编译Android出现cannot find -lstdc++解决办法 在Ubuntu 12.04 x86_64机器上编译Android出现下面错误,是因为找不到32bit的libstdc++.so库. /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.so when searching for -lstdc++ /usr/bin/ld: skipping incom

【Cocos2d-x】编译Android工程时提示error: 'GL_LINE_SMOOTH' was not declared in this scope

在Cocos2d-x项目中用到了OpenGL,使用GL_LINE_SMOOTH开启线条抗锯齿.代码如下: ccDrawColor4B(50, 26, 12, 255); // 设置线宽 glLineWidth(2.0f); // 启用线段反锯齿 glEnable(GL_LINE_SMOOTH); // 画第一条线 ccDrawLine(startPoint1,endPoint); // 画第二条线 ccDrawLine(startPoint2,endPoint); // 关闭线段反锯齿 glDi

编译android源码报错:build/envsetup.sh: 1: Syntax error:

编译android源码时报错: build/envsetup.sh: 1: Syntax error: "(" unexpected 解决方法: 执行$sudo dpkg-reconfigure dash命令,并选择"否" 编译android源码报错:build/envsetup.sh: 1: Syntax error:

Android Studio解决Error:moudle not specified

Android Studio解决Error:moudle not specified 在使用Android Studio 进行Builder APKs的时候,如果发现无法degub, 进行配置的时候 没有module可以进行指定,如果所示(借个图) 问题的原因一般是Grade Files 没有有效同步. 1.首先要确保Grade  同步完成 如果有问题参考这个链接 https://www.cnblogs.com/xiadewang/p/7820377.html 2.进行手动同步 旧的AS版本 点

Visual Studio Xamarin编译Android项目出错的解决办法

安装完Xamarin后,编译Android项目时,你会发现好长时间进度都不动,当你取消编译后,会发现其实是出错了,就是因在Android项目在第一次编译时要去google网站上下一个andorid sdk包,墙内又连不上,就卡在那了,解决办法就是自已到国内的一些镜像网站上(如:http://mirrors.opencas.cn/android/)下一个,如:android_m2repository_r29.zip, 然后解压到任意目录下,用mklink建立链接到C:\Users\{usernam

android - Lint Error Checking导致的无法打包问题的解决办法

Export aborted because fatal lint errors were found.These are listed in the Problems view.Either fix these before running Export again,or turn off "Run full error check when exporting app" in the Android > Lint Error checking preference page.