我在Android studio adn gradle导入appcompat-v7时出现问题。
所以这是我在src目录中的build.gradle
apply plugin: 'android'
apply plugin: 'android-apt'
def AAVersion = '3.0.1'
android {
compileSdkVersion 19
buildToolsVersion "19.0.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 19
versionCode 1
versionName "1.0"
packageName "com.test"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
apt {
arguments {
resourcePackageName android.defaultConfig.packageName
androidManifestFile variant.processResources.manifestFile
}
}
dependencies {
// You must install or update the Support Repository through the SDK manager to use this dependency.
// The Support Repository (separate from the corresponding library) can be found in the Extras category.
compile 'com.android.support:support-v4:19.0.1'
// You must install or update the Support Repository through the SDK manager to use this dependency.
// The Support Repository (separate from the corresponding library) can be found in the Extras category.
compile 'com.android.support:appcompat-v7:19.0.1'
// android annotations
compile "org.androidannotations:androidannotations-api:$AAVersion"
apt "org.androidannotations:androidannotations:$AAVersion"
}
但是我收到以下错误
Execution failed for task ':app:prepareComAndroidSupportAppcompatV71901Library'.
> Could not expand ZIP '/opt/android-sdk/extras/android/m2repository/com/android/support/appcompat-v7/19.0.1/appcompat-v7-19.0.1.aar'.
如何解决我的问题? Thx提前
答案 0 :(得分:22)
似乎问题在于目录权限。
检查并尝试以下事项:
答案 1 :(得分:5)
如果您使用的是* UNIX,则可以从Android Studio命令行运行此命令
sudo chmod -R 777 /your/project/path
答案 2 :(得分:4)
只想添加我的经验。我收到了一个kafka jar的错误
FAILURE: Build failed with an exception.
* What went wrong:
Could not expand ZIP '/home/srangwal/.gradle/caches/modules-2/files-2.1/org.apache.kafka/kafka_2.9.2/0.8.2.0/f9e44ac2d80afee7d5696f11814e6a65af5a380a/kafka_2.9.2-0.8.2.0.jar'.
> Could not copy zip entry /home/srangwal/.gradle/caches/modules-2/files-2.1/org.apache.kafka/kafka_2.9.2/0.8.2.0/f9e44ac2d80afee7d5696f11814e6a65af5a380a/kafka_2.9.2-0.8.2.0.jar!kafka/consumer/ZookeeperConsumerConnector$ZKRebalancerListener$$anonfun$kafka$consumer$ZookeeperConsumerConnector$ZKRebalancerListener$$addPartitionTopicInfo$1.class to '/home/srangwal/work-projects/griffin/build/tmp/expandedArchives/kafka_2.9.2-0.8.2.0.jar_7e6mtfrbv2j9f9v18u5gsfe9q/kafka/consumer/ZookeeperConsumerConnector$ZKRebalancerListener$$anonfun$kafka$consumer$ZookeeperConsumerConnector$ZKRebalancerListener$$addPartitionTopicInfo$1.class'.
要调试,我试图触摸gradle尝试创建的文件,因为我所有目录的权限都很好
touch '/home/srangwal/work-projects/griffin/build/tmp/expandedArchives/kafka_2.9.2-0.8.2.0.jar_7e6mtfrbv2j9f9v18u5gsfe9q/kafka/consumer/ZookeeperConsumerConnector$ZKRebalancerListener$$anonfun$kafka$consumer$ZookeeperConsumerConnector$ZKRebalancerListener$$addPartitionTopicInfo$1.class'
touch: cannot touch ‘/home/srangwal/work-projects/griffin/build/tmp/expandedArchives/kafka_2.9.2-0.8.2.0.jar_7e6mtfrbv2j9f9v18u5gsfe9q/kafka/consumer/ZookeeperConsumerConnector$ZKRebalancerListener$$anonfun$kafka$consumer$ZookeeperConsumerConnector$ZKRebalancerListener$$addPartitionTopicInfo$1.class’: File name too long
我收到此错误是因为我正在使用ubuntu中的加密文件系统而加密文件系统不允许使用非常长的文件名。
答案 3 :(得分:4)
按照以下步骤进行构建成功
cd android/
./gradlew clean
答案 4 :(得分:2)
当我尝试在IntelliJ IDEA 13.1.4和我的多模块项目中构建项目时,我遇到了同样的问题。 不是很好的解决方案,但我已经取消选中“并行编译独立模块(可能需要更大的堆空间)”并且问题消失了。 此外,我的项目的Gradle配置可能并不理想(但我仍然可以通过命令行成功构建项目)并且我正在检查弱点。
答案 5 :(得分:2)
我找到了someone with the same problem here。
解决方案 - 尽管是一个临时 - 解决方案是在我的项目的build.gradle文件中从Gradle 2.1.0降级到2.0.0。
答案 6 :(得分:2)
伙计这个“可能”是你的图书馆与gradle版本不兼容的问题。所以我减少了gradle版本并且它有效。我建议您尝试更改您的gradle版本,然后再次构建。 希望它可以帮到某人。
答案 7 :(得分:0)
在我的情况下,这是一个Windows权限问题。 该项目是从Cygwin创建的,所有文件夹都有奇怪的权限
答案 8 :(得分:0)
我是Ubuntu用户,我遇到了同样的问题。我按照pyus13的回答,我给了项目文件夹的写权限,而不是给 android-studio 和 android-sdk-linux < / strong>即可。另外,命令
sudo chmod 7777 /your/project/path
没有工作。但是,
sudo chmod 757 -R /your/project/path
工作得很好。
答案 9 :(得分:0)
Ubuntu用户在这里;我在安装的USB上备份我的库之后偶然发现了这个问题,然后在从备份恢复后发现项目文件夹上的权限已被更改。
要恢复访问权限,我执行了以下步骤:
允许R / W访问Android项目文件夹。 sudo chmod -R 777 ./MyProjectDir
在Android Studio中打开项目。 gradle完成索引后,clean
构建。
答案 10 :(得分:0)
我对自己的库有同样的问题。最终的.aar里面包含一个无效的.so文件名。
清理所有依赖项并重建修复了问题。
我通过使用Gradle启用--stacktrace来找到问题。
答案 11 :(得分:0)
For me the issue was with the folder that the file was being unzipped to. Deleting that and running the build again sorted it out
答案 12 :(得分:0)
运行cd android && gradlew clean && cd.. && react-native run-android
答案 13 :(得分:0)
在我的情况下,它的AAR太大,我不使用git lfs
答案 14 :(得分:-1)
答案 15 :(得分:-2)
我想我可以帮助你,你应该尝试将你的项目删除到你的Ubuntu用户目录,比如/ home / username /,然后重新加载你的项目并运行它。