2012-12-13 15 views
18

私は突然動作を停止したAndroidアプリケーションプロジェクトを持っています。そこには、エラーが明らかにされていないが、私は起動しようとすると、私はこれを取得:Android Eclipse aaptを実行中にエラーが発生しました:return code 139

実行エラーAAPT:リターンコードIは、プロジェクトとその依存ライブラリプロジェクトをきれいにしようとした139

、Eclipseを再起動最新のADTやSDKのバージョンなどに更新されましたが、すべて失敗しました。また、私は(何も変更せずに)時々この他のエラーを持っている:java.io.FileNotFoundException:最終アーカイブ作成

エラー を.../binに/ resources.ap_は

存在しないI完全に失われた。

MORE INFO

私は作品によって、すべての作品を分解して組み立て直すために時間を費やし、そして最終的に、私はまだ良い何かを理解していないものの、これらのエラーの原因を見つけ...私はこのようなリソースを持っていました:

<resources> 
<integer-array name="titi"> 
<item>@+id/toto</item> 
</integer-array> 
</resources> 

私はそれを削除し、すべてが再び機能しました...もちろん、リソースファイルには全くエラーはありませんでした。半日も何も失われていない、このEclipseは私を怒らせる8- /私は唯一の私ですか?

+1

スタイル内にIDを宣言した後も同じエラーが発生しました。 IDリソースに関連するものでなければなりませんか? – Matthias

+0

ちょうど同じエラーが発生し、それを追跡しながらかなり過ごしました。私にとっては、問題はcom.google.android.gms.maps.MapViewとそれに割り当てられたIDです。これを "mapview"にすると動作しますが、 "map"は動作しません。どちらのIDもその特定のレイアウトの他の場所では使用されませんが、どちらも他のレイアウトで使用されます。私は古いMapViewクラスを新しいマップビュークラスに変換しています(すべての古いインスタンスはIDの「マップビュー」でした。新しいマップマップを作成して追跡します)。これは奇妙なID競合のバグでなければなりませんか? –

+0

「mapview」というIDのどこかにビューがないと、私のエラーのように見えます。私はバグを提出しました:http://code.google.com/p/android/issues/detail?id=43100 –

答えて

37

ちょうど同じ問題を持っていた問題は、私ということでした私の文字列ファイルに存在しないandroid:title="@string/.."というメニューフォルダ内にメニューファイルがありました。それを追加してProject > Cleanを実行した後、問題はなくなりました。

+1

私はちょうど同じクラッシュをしました。メニューXMLに "@ string/missing_string"を使用しました。 – WindRider

+4

確かに。私は、自動生成された文字列を整理しました(不要に見えました):設定 'strings.xml。 それを元に戻して私の問題を解決しました。 – ronnydw

+2

おかげさまで、まったく同じ問題を抱え、大規模なプロジェクトを追跡するのは難しいです! –

0

AAPTエラーが時々で実行する日食のためのメモリ不足によって引き起こされる参照してください:。

How to diagnose "Error executing aapt" error in Eclipse?

の問題の第二部では、これを参照してください。

Android Packaging Problem: resources.ap_ does not exist

+0

私はすでにこれらの答えを見てきましたが、助けにはなりませんでした。システムには十分な空きメモリがあります。私も最新のADTとSDKのバージョンに更新しましたが、エラーを解決しませんでした... – Patrick

5

ドン「Tは、ここに@+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

私はちょうどプロジェクト離れ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> 
2

は、同じ問題がヒット単一引用符「 '」まで追跡され、リソース内に存在します。引用符を削除し、エラーが消え去った。

関連する問題