操作系统版本:Ubuntu 14.04 LTE 64位
Java JRE / JDK版本:Oracle JDK 1.8.0_11
项目目录位于基于NTFS的驱动器上。
每当我尝试清理我的项目时,我都会得到类似下面的内容。
:app:clean FAILED错误:任务':app:clean'执行失败。
无法删除文件:/ media / DriveA / AndroidStudioWorkspace / DNA / app / build / intermediates / classes / debug /.../ mechandising / MerchandizingActivity $ 3.class
当我尝试手动删除构建文件夹时,出现以下错误。
获取文件信息时出错 '/媒体/ DRIVEA / AndroidStudioWorkspace / DNA /应用/建造/中间体/前dexed': 输入/输出错误
我无法弄清楚它是Linux问题还是Studio问题。我在Eclipse(Same Drive)中没有遇到这样的问题,所以我只是认为我的工作室出了问题。
任何建议??
答案 0 :(得分:34)
我遇到了同样的问题。
您需要直接转到源文件。 关闭工作室并转到问题所在的路径并删除该文件夹。
答案 1 :(得分:20)
转到
档案>设置>构建,执行,部署>即时运行>取消选中 此复选框(启用即时运行热插拔代码)
由于 有一个很好的编码
答案 2 :(得分:12)
您可以进入项目目录并从命令行调用gradle对项目进行清理:
gradlew clean
重新打开项目时,需要再次运行gradle sync。
答案 3 :(得分:5)
现在遇到同样的问题 - 我不小心编辑了其中一个生成的文件并想重建应用程序,但由于某些文件被锁定,clean
和build
都失败了。
幸运的是,我的Windows机器上有cygwin
,因此ls -l <file that studio complained about>
显示这些文件归某些Administrator
家伙所有。
我的第一个想法是,这些文件可能是在Studio以管理员权限运行时创建的(当我需要从SDK manager
获取更新时,我这样做)。我们的想法是尝试通过在使用管理员权限运行的Studio中执行clean
来解决此问题,然后使用普通权限进行重建。不,这不起作用:(
我决定去蛮力:sudo rm -rf app/build/*
(在Cygwin
中,这个命令看起来有点不同:cygstart --action=runas rm -rf app/build/*
)。这解决了这个问题,我能够在Android Studio中重建项目。
答案 4 :(得分:3)
答案 5 :(得分:2)
在Linux上,如果您有 locked
目录阻止Android Studio删除文件,则可能会发生这种情况。
您可以在终端上运行以下命令:
sudo chown -R $USER: $HOME
然后尝试重建 - &gt;适合我
答案 6 :(得分:1)
我和你有同样的问题。我尝试了本页提出的一些解决方案但它没有用。所以我使用Process Explorer来查找锁定apk文件的进程,它是firefox。我认为当我在谷歌播放控制台上传apk时,它会锁定文件。为了实现这一目标,请查看&#34;查找&gt;查找句柄或DLL ...&gt;路径到您的-app.apk&#34 ;. 希望有所帮助
答案 7 :(得分:1)
我停止了Windows防御者锁定文件,因为它需要扫描,问题解决了
答案 8 :(得分:0)
我通过在build.gradle(project)中升级gradle版本解决了它
答案 9 :(得分:0)
1)首次运行科尔多瓦清洁cammand
离子科尔多瓦干净
2)之后,运行构建命令
ionic cordova构建android
答案 10 :(得分:0)
在Windows中以管理员身份运行android studio对我有用。 :)
答案 11 :(得分:0)
1)转到文件>设置>构建,执行,部署>即时运行>取消选中此复选框(将即时运行启用为热插拔代码)。
2)重新启动android studio
答案 12 :(得分:0)
我进入此线程是因为/release/app.aab被锁定存在问题。这使我无法完成项目的清理工作并无法生成签名包。我的解决方法是重新启动计算机以重新获得权限,直到解决问题为止。
事实证明,Git锁定了app.aab,我要做的就是在我的/app/.gitignore中添加“ / release”。
希望这对某人有帮助。
答案 13 :(得分:0)
应该是一个锁定文件句柄的进程。您可以尝试打开任务管理器以终止该过程。就我而言,该进程是Android Studio OpenJDK持有的Java进程之一。只要找到它并杀死它即可。
答案 14 :(得分:0)
以上答案均对我不起作用,但更改权限有效:
chown user:staff ../project_dir
find ../project_dir -type d -exec chmod 775 {} \;
find ../project_dir -type f -exec chmod 664 {} \;
答案 15 :(得分:0)
我有同样的问题。 为了一次又一次地构建项目,我不得不每次都删除构建文件夹。对我来说,问题是我的系统中运行了一个名为 ByteFence.exe 的匿名程序。当我卸载该程序后,我的问题就解决了。
答案 16 :(得分:0)
这解决了我的问题。
感谢Gal的回答(https://stackoverflow.com/a/39904628/2870404)。
在Windows中,使用Windows文件资源管理器,
右键单击目录, 单击将出现的上下文菜单上的属性, 然后取消选中&#34;只读&#34;属性。 之后,单击&#34;应用&#34;应用更改。
答案 17 :(得分:0)
感谢Gal的回答(https://stackoverflow.com/a/39904628/2870404)。
在Windows中,使用Windows文件资源管理器,
答案 18 :(得分:0)
我不是在Windows上,而是OS X.不知怎的,我的构建文件夹没有AS的适当权限来删除文件,因此我在受影响的父目录中执行了chmod -R 777 <your_directory>
。可能777不是你想要的,但它对我有用。
答案 19 :(得分:0)
我通过关闭android studio解决了这个问题 - &gt;通过cli删除android平台然后 - &gt;再次添加android平台 - &gt;在android studio中打开项目。
答案 20 :(得分:0)
当我尝试调试我的第一个Android应用时,我遇到了类似的问题。如果您在Windows上运行Android Studio,我只是重新启动了Android工作室,我确实以管理员身份运行Android Studio来解决问题。
答案 21 :(得分:0)
转到终端中的项目目录并运行gradlew clean
在终端/命令提示符下运行Gradle命令。导航到项目的根目录并在终端中键入gradlew
或在命令提示符下键入gradlew.bat
(Windows用户),然后键入要执行的命令。
有关所有可能的gradle命令的列表,请在终端中输入gradlew tasks
。