web-dev-qa-db-ja.com

「Rは変数に解決できません」

Eclipseでは、私はソースからプロジェクトを作成しましたが、今度はエラーが表示されます - 「Rは変数に解決できません」。ここで見つけたものから、プロジェクトをクリアして再構築しましたが、それでもRファイルは/ genフォルダーに表示されません。

何か案は?

237
Roger

心配しないでください。最初にプロジェクトをきれいにしてからプロジェクトを実行します。これでうまくいかない場合は、次のリンクに従ってください。

175
Dharma Kshetri

Clean/Rebuild Projectが機能しない場合は、AndroidManifest.xmlでパッケージ名を確認してください。

AndroidManifest.xmlファイルでパッケージ名を変更すると、「Rを解決できません」という問題が発生します。 Androidパッケージ名を使用して、R.Javaファイルが格納されている「gen」ディレクトリの下にサブディレクトリを作成します。

42
robbycandra

私にとっては、エラーはAndroid SDK Managerでいくつかの変更を加えることで修正されました。
利用可能な最新のAPIレベルが何であれ、その "SDK Platform"をインストールしてください。私にとって利用可能な最新のAPIレベルは16でした、それで私は下の画像で示されるようにその私のSDKプラットフォームをインストールしました。今はうまくいきます。

Screenshot of Android SDK Manager after fixing the problem
乾杯、マヤンク

10
Mayank Jaiswal

あなたはちょうどsdkとadtの両方を更新しましたか(21から22へ)、そしてあなたは新しいアイテムをインストールする必要があります: Android SDK Build-tools

参照してください: 最近の更新後にEclipseからエラーが発生し、R.Javaファイルが見つかりません

9
macio.Jun

私にとっては、 "R"ファイルに問題がある人々に提案するための最善の解決策は、次のステップを試すことです(順序は関係ありません)。

  1. aDT&SDK、Eclipse、およびJavaを更新します。

  2. genフォルダを削除して、もう一度作成します。

  3. クリーンプロジェクトを行います。

  4. プロジェクトを右クリックしてAndroid-tools - > fix-project-propertiesを選択します。

  5. プロジェクトを右クリックして、「プロパティー」 - >「Javaビルド・パス」 - >「注文とエクスポート」を選択します。順番が次のとおりであることを確認してください。

    • アンドロイド4.3(常に最新バージョン)

    • Androidプライベートライブラリ

    • Androidの依存関係

    • 必要に応じてあなたの図書館プロジェクト

    • yourAppProject/gen

    • yourAppProject/src

  6. resフォルダのサブフォルダ内のすべてのファイルの名前が正しいことを確認してください。小文字、数字、およびアンダースコア( "_")のみです。

  7. targetSdkが最新のAPI(現在は18)を指していることを常に確認し、それをproject.propertiesファイルに設定します。

6

私にとってはどういうわけかプロジェクトのプロパティ。アンドロイド;プロジェクトビルドターゲットが設定されていません。私はそこにAndroidのバージョン(例えば4.2)を選びました、そしてそれはそれを修正しました。

6
Phileas Fogg

私にとっては、私のSDKの最後にスラッシュがありませんでした。 Eclipse>設定> Android> SDKの場所

例えば、

/home/matt/Android-sdk-linux

/home/matt/Android-sdk-linux/
4
matt burns

あなたが本当にそれをする必要があるものはただsdkマネージャから "build-tools"をインストールするだけで、r.Javaが自動的に生成されます。

3
AJay

私は私が見つけた同様の問題と解決策をファイルのいずれかの背景、音などのリソースにあったことがわかった - 大文字以外の_以外の特別な記号を含んではいけません

3
vCillusion

あなたのAndroidマニフェストは正しいパッケージから始める必要があります

<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
    package="HERE - Correct package NAME"
    Android:versionCode="1"
    Android:versionName="1.0" >`

私は同じエラーがありました。エラーでした、私は無効なファイル名でres/rawフォルダにファイルを置いていました。ファイル名を有効なものに修正するとすぐに、エラーは解決しました。

ファイルの命名に使用できる文字: -

1. a-z
2. . _
3. 0-9
4. no capital letters

私の場合は大文字が問題でした。

2
Shishir Gupta

私はこの問題を抱えていて、他のどのガイドも助けにならなかった、そして私は私のシステムにJava jdkがインストールされていないことに気づいた。まだ行っていない場合は、インストールしたEclipseのバージョン(x86またはx64)に対応するバージョンをダウンロードしてください。

1
HollywoodCurls

FedoraとADTのアップグレード後に追加のライブラリをインストールすることで、fc19.x86_64とADT v22.0.5-757759のRリソースを解決することで問題を解決しました。

yum install ld-linux.so.2
yum install libstdc++.so.6
yum install libz.so.1

これらのライブラリはadb(Android Debug Bridgeバージョン1.0.31)に必要です。

それからEclipseを再起動して、プロジェクトをクリーンにします。

それが役に立てば幸い :)

1
Stepan Hruska

androidmanifest.xmlファイルとlayoutfolder xmlファイルを確認してください。 xmlの開始句と終了句が正しく配置されるように、これらは正しく作成されるべきです。ファイルを更新し、クリーンアップしてビルドします。そしてすべて設定しました!

1
Riddhi K

AndroidManifestファイルを修正してみてください。

たとえば、スペースを追加してこのスペースを削除します。この操作の後、プロジェクトを保存してください。リソースが更新されます。それは助けることができます。

1
analogbody

Googles '最初のレッスン'からNotepadv3プログラムを実行しようとしたときに私はこの問題を発見しました..

私にとっては、私が使用していたAPIレベルのせいで、xmlファイルに関する問題でした。 Match_Parentの各ケースを古いタイプのFill_Parentに名前変更しました。ああ、あなたがすでにプロジェクトを自動ビルドしているなら、NoteEdit.JavaとNotepadv3.Javaの 'import Android.R'を削除する必要があります。プロジェクトをクリーンアップして( 'Project'をクリックしてから 'clean ...') 。

私のためにそれを解決しました。この投稿から来ました - Android NDK r4 san-angeles問題

Googleがこの問題について警告していないとは思えない - 私はプログラミングを再開するために別のPCをセットアップしていたが、少しの予備知識があってもこれは苦痛だった。既存のプロジェクトをインポートするときのAPIの設定方法は? ?あなたが「ファイル」、「インポート」などを行ったときにダイアログオプションがある場所がわかりません。

スカンパレッリ

1
Scamparelli

* .xmlファイルにエラーがある可能性があります。レイアウトなど.

1
Vlad

私の問題は奇妙であり、見つけるのに時間がかかりました。どういうわけかsrcファイルのパッケージが変更されたため、パッケージの最後のエントリが削除されました。したがって、たとえば、最初は私のクラスMyActivity.Javaがcom.abc.client.test.appパッケージに含まれていましたが、ユーザー権限を追加した後、アプリが削除され、パッケージの名前はcom.abc.client.testに変更されました。どうなったのかわかりません。パッケージの名前を変更し、Javaファイルを正しい場所に配置することで問題が解決しました。

1
Chaviv Perlman

誤って "R"にインポートを追加することがあるので、自分のコードを追加していないという奇妙なインポートがコードの先頭に表示されている場合は、参照を削除してください。

1
Keerigan

プロジェクトの名前を変更したときにこれがわかりました。プロジェクトの名前は変更されましたが、参照されていないものもあります。糸くずを片付け、次に糸くずを再実行するのが助けになりました。 (プロジェクトを右クリックして[Android Tools]> [Clear Lint Markers]、[Run Lint])

0
powlo

私の場合、R.Javaは 階層的な親エラー が原因で生成されていませんでした。これは、更新された1つ以上のEclipseプラグインによって解決されました(Go Go - > Help - > Check for Updates)。

0
Arsene Lupin

問題はEclipseがR.Javaを生成していなかったことです。この問題を解決するには、project-> clean ...に移動してプロジェクトを選択し、次にOKを選択してからプロジェクトをクリーンおよびビルドしてパッケージ名Rファイル(Ex com.demo.R)をインポートしてください。できます。

0
Enli

SDKのインストール後にSDKビルドツールを個別にインストールする必要があるという最近の更新の後、私の設定は壊れました。そのため、ビルドツールのアップデート+ Eclipseの再起動でこれが修正されました。

クレジットは Androidの返信はこちら になります

0
Mario Peshev

他の解決策が失敗した場合は、プロジェクトを選択して削除してください。ディスクからファイルを削除しないでください。

次に、ファイル>インポート>既存のAndroidコードをワークスペースに入れて、プロジェクトの場所を選択します。

0
Nino van Hooff

Resフォルダーにjsファイルを追加したときにこのエラーが発生しました。

Resフォルダのアイコンにエラーインジケータが設定されました。 Rを使用したすべてのクラスで、このエラーが発生しました。

私はjsファイルをassetsフォルダに移動しましたが、すべてうまくいきました。

0
tavi

これは、Androidの命名規則に従わない場合に発生する可能性があります。ファイル/写真がAndroidフォルダのいずれかに配置されているかどうかを確認し、ファイル名に小文字のみが含まれていることを確認してください。

0
MrT

私はこれが古い質問であることを知っていますが、私はそれの私自身のバージョンを解決しただけで、おそらくこれは誰かに役立つかもしれません。

これで私の髪を引き裂いて2日後、私はついにrawフォルダを削除し、それからそれを再作成してファイルをドロップすることでそれを回避しました。

その後、別のProject > Cleanとそれがついにコンパイルされました。

0
Robert

プロジェクト>クリーン...

通常gen/com.mypackageにあるR.Javaファイルを再生成します

0
Kamil Szot