我有一个突然停止工作的Android应用程序项目。显然没有错误,但是当我尝试启动时,我得到了这个:
执行aapt时出错:返回代码139
我尝试清理项目及其依赖库项目,重新启动Eclipse,更新到最新的ADT和SDK版本等,但都失败了。我有时也会遇到这个错误(没有改变任何东西):
生成最终存档时出错:java.io.FileNotFoundException: ... / bin / resources.ap_不存在
我完全失去了。
更多信息
我花了几个小时一块一块地拆解和重新组装所有东西,最后找到导致这些错误的原因,虽然我仍然不明白更好......我有这样的资源:
<resources>
<integer-array name="titi">
<item>@+id/toto</item>
</integer-array>
</resources>
我删除了它,一切都恢复了......当然资源文件根本没有错误。半天失去了什么,这个Eclipse让我疯了8- /我是唯一一个?
答案 0 :(得分:38)
刚出现同样的问题,问题是我在菜单文件夹中有一个菜单文件,其中android:title="@string/.."
在我的字符串文件中不存在。添加它并执行Project > Clean
后,问题就消失了。
答案 1 :(得分:5)
请勿在此处使用@+id/...
:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer-array name="titi">
<Item>@+id/Toto</item>
</integer-array>
</resources>
@+id/...
只能在布局资源中使用。
使用@id/...
并根据需要使用帮助资源文件生成ID:
RES /值/ ids.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item type="id" name="toto" />
</resources>
http://developer.android.com/guide/topics/resources/more-resources.html#Id
答案 2 :(得分:2)
我刚刚使用Android v7 appcompat support library移动了一个项目并遇到了这个问题。事实证明我有一堆菜单资源文件仍在使用其某些属性的appcompat版本。
我以前有这个:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:compat="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/conversations_activity_menu_contacts"
android:title="@string/contacts"
compat:showAsAction="ifRoom|withText" />
</menu>
然后通过将问题更改为此来纠正问题:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/conversations_activity_menu_contacts"
android:showAsAction="ifRoom|withText"
android:title="@string/contacts" />
</menu>
答案 3 :(得分:2)
遇到同样的问题,经过一个小时左右的播放问题被追溯到一个单一的引用&#34; &#39; &#34;,存在于资源中。删除了引用,错误消失了。
答案 4 :(得分:0)
AAPT错误有时是由于eclipse运行的内存不足造成的。请参阅:
How to diagnose "Error executing aapt" error in Eclipse?
对于问题的第二部分,请参阅: