2013-11-26 14 views
43

this questionとしてSquare Wire libraryを使用するようにAndroidスタジオでプロジェクトをセットアップしました。Android Studioインラインコンパイラで赤いエラーが表示されますが、gradleのコンパイルはうまく動作します

Build - >Compile Projectが問題ありません。

2:03:10 PM Compilation completed successfully in 31 sec 

ただし、生成されたプロトコルバッファファイルを開くと、Squareパッケージが認識されません。

Android Studio inline compile errors

別の症状は、彼らが構築していても、エディタでエラーをコンパイルし、罰金実行「メソッドを解決できません」と広場Messageクラスから継承されたメソッドが表示されているということです。

Android Studio single line compile error

私はちょうど私のプロジェクトで私のモジュールのbuild.gradleに依存関係を追加するよりも何かをする必要がありますか?

答えて

73

私はここで正しい道を得るためにfree3domに感謝します。

診断

のAndroid StudioのSync Project with Gradle Filesオプションは、日付までのProject Structureライブラリを続けているようです。

gradle sync

しかし、私の場合には多少の誤差があった:

errors found

は(非常に明白ではない)のリンクを展開するには、詳細を示しました。マイワイヤランタイムライブラリが誤った場所に表示されました:

libraries

これは、私はLIBSフォルダにJARを輸入していた私の元の構成から二日酔いのようでした。

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar') 
} 

私はその後、Mavenの中央(as per here)から直接インポートすることを変え、そして古い設定が新しいもので上書きされることはなかったようです。

修正がProject Structure画面から、ライブラリの依存関係を削除することで、再びSync Project with Gradle Files修正。

詳細

また、直接.idea/libraries/wire_runtime_1_2_0.xmlを開いてリソースに使用されているもののパスを参照することができます。

私の壊れた1だった:

<component name="libraryTable"> 
    <library name="wire-runtime-1.2.0"> 
    <CLASSES> 
     <root url="jar://$PROJECT_DIR$/MY_MODULE/libs/wire-runtime-1.2.0.jar!/" /> 
    </CLASSES> 
    <JAVADOC /> 
    <SOURCES /> 

削除し、ライブラリを再追加した後、それはroot urlへの変更:

 <root url="jar://$USER_HOME$/.gradle/caches/artifacts-26/filestore/com.squareup.wire/wire-runtime/1.2.0/jar/44e7acbd5eb6f29698181dc3d67a60acf7efee80/wire-runtime-1.2.0.jar!/" /> 

更新

アンドロイドスタジオv0.4.4 apparently fixes other bugsを同じ症状があるので、古いバージョンを使用している場合は、アップグレードすることをお勧めします。

+3

Dan Jありがとうございました。あなたの解決策を試す前に、私はこの簡単な方法を試してみました。それは私のために働いていました: 右のGradleパネルを開きます( "Maven Projects"と "Commander"の上にある)エディタの横にあるボタンをクリックして、リフレッシュボタンをクリックすると、モジュールの設定が更新されました。@Matteo Danieliのクレジット(参照:http://stackoverflow.com/a/17043001) – almighty972

+0

ありがとう、@ almighty972。あなたのソリューションは私にとってもうまくいった。 – stevehs17

+0

かなりうまく作業しました – pcj

1

これらの解決策は、Android Studio 0.5.8で同じ問題が発生した場合には役に立ちませんでした。

私は同じ質問に答えました(私は推測します):https://stackoverflow.com/a/23891829/534698 〜/ .AndroidStudioPreviewディレクトリ(Ubuntuで)を削除しました。 Androidスタジオの設定はすべて忘れましたが、うまくいきます。

+0

これは私のために働いた唯一のものです。 Android Studio 1.0.2 –

32

簡易回答

リンクをたどってくれて、それは私のために働いた。

1.アンドロイドスタジオの左上のメニューからファイルオプションを選択します。 ))オプションを選択します。「キャッシュを無効にする/再起動...」ダイアログが開きます。 3.)最初のボタンをクリックします。「無効化と再起動」 4.スタジオを閉じて再起動します。プロジェクトのインデックス作成を開始します。 は、それをファイルに私の問題

ゴーを解決 - >無効化キャッシュ/再起動 - >私は、前に同様の問題を持っていたキャッシュを無効に無効にして再起動

ソース https://www.youtube.com/watch?v=FX_gCTpqhwM

+0

これは私のために働いた; Android Studioは、Wi-Fiの受信状態が悪い場所でプログラミングをやろうとしたところで、どこにでもエラーを表示していました。 (!!!)その後、私は良いWiFi接続と再構築を確認しましたが、エラーは残っていました。クリーン/ビルドでさえ解決できませんでした。キャッシュを無効にして固定しました。 –

+0

FedoraでAndroid Studio 2.1.3を使用しています。このソリューションは私のために働いた。 libgdxツールを追加しました。インポートにエラーがありましたが、うまくコンパイルされました。クローズと再オープンは機能しませんでしたが、無効化と再開はうまくいきました。 – JoeMoe1984

0

と再起動しても解決されませんでした。私はちょうどGradle Syncをやったが、すべてうまくいった。

27

1)のGradleアイコン(アンドロイドスタジオの右側)

enter image description here

2をクリックします)更新ボタンをクリックすると、問題が解決されるのを待つ:D

enter image description here

+0

それは私のために働いた。 –

+0

私のためにも。ありがとう! – Santacrab

0

上記のすべての回答がうまくいかない場合。 依存関係を最新バージョンに更新してみてください。 それは私のために働いた。

0

上記の回答はすべて私と一緒には機能しませんでした。私はAndroidのスタジオバージョン2.3.3を使用しています:(