新しいAndroid Studioを試しています。 build gradleオプションを使用して、Eclipseからプロジェクトをエクスポートしました。その後、Android Studioにインポートしました。 genの下のR.Javaファイルには、小さな赤い丸の中にjがあります。また、ソースファイルでは、リソースへの参照がある場合は常に「シンボルRを解決できません」と表示されます。 「R.layout.account_list」など.
私はIntellijを使用したことがありません。 Android Studioについてはまだ多くの回答が明らかにないので、助けていただければ幸いです。ありがとう!
PS:1年以上前の回答とメニューが変更されました。
ファイル->キャッシュを無効にする
それから
アプリケーションを再起動
これまでのところ、ウェブ上の答えはどれも役に立たなかった。 ビルド>プロジェクトの作成は機能しませんでした。私にとっては、この他のオプションを選択するのと同じくらい簡単でした(Android Studio 1.3.1):
ビルド>モジュール 'モジュール名'を作成
私の場合、EclipseからインポートされたActivityファイルに次の行がありました:
import Android.R;
そのため、すべてのRクラスはSDKに解決され、その行をコメントアウトするとすぐに、すべてがパッケージに正しくコンパイルされました。この問題に気づいたのは、プロジェクトをMacからWindowsマシンに移動したときだけでした。
Build.gradleを使用して署名済み.apkを構築するために必要なデータ(signingConfigs)を組み込むと、この問題が発生し始めました。コマンドラインからビルドが成功したように見えた後、R。*を使用しているクラスに入ると、すべてのR. *参照が未解決であることがわかりました。
ここでの答えは私を助けませんでした。私はプロジェクトを再インポートすることを決定し、問題を魔法のように修正しました。 [ファイル/プロジェクトのインポート...]をクリックし、アプリのルートフォルダーでbuild.gradleファイルを選択します。再インポートがこれを修正した理由を知りたいです:)
これはおそらく、リソースのビルドが失敗したためです
問題が修正されると、単なるBuild > Rebuild Project
がトリックを行います
ジャンプファイル-> 設定-> コンパイラ今チェック外部ビルドを使用
その後、プロジェクトを再構築します
特にこの問題を別のプロジェクトの一部としてプロジェクトライブラリに統合する場合、この問題に何度も不満を感じています。この問題の最新の発生では、Android libプロジェクトはWebViewを使用していました。 Gradleは、「web」という名前のサブディレクトリにR.classファイルを作成します。このサブディレクトリのパスは、ソースコードのパスとは関係ありません。これをインポートすると、問題はなくなりました。私は何を学びましたか?将来的には、単にR.classのファイル検索を行い、それが配置されているパスをメモします。次に、そのパスを使用してパッケージをコードにインポートします。これを手動で実行する必要があるのは本当に残念です。 Gradleは、生成したパッケージを自動的にインポートする必要があります。
解決策は、プロジェクト構造ウィンドウを開くことです。 [command +を押す。 Mac OXの場合。他のプラットフォームの主要なショートカットはありません。 [ファイル]メニューで見つけることができるはずです。]そして[プロジェクト設定]セクションで[モジュール]をクリックすると、プロジェクトが表示され、生成されたR.Javaをソースとしてマークします。
Intellij idea 14.0 CEを使用しています。生成されたR.Javaはbuild/generated/source/r/debug/com/example/xxxにあります
初めて見つけるのは本当に簡単ではありません。
エラーがない場合はすべてのファイルをチェックし、プロジェクトを再度再構築する必要があります。
または:
use external build
を確認し、プロジェクトを再構築した後。
上記の返信に加えて、IntelliJ(スタジオではない)で私にとってうまくいったものがあります:
Androidファセットを既存のAndroidモジュールに添付する必要があります。これを行うには、「モジュール設定」のモジュールリストからモジュールを選択し、上部の「+」ボタンを押して「Android」を選択します。 https://www.jetbrains.com/idea/webhelp/enabling-Android-support.html を参照してください。
以下の5つの手順に従います。
<uses-permission Android:name="Android.permission.VIBRATE"></uses-permission>
)私は同じ問題を抱えていましたが、すべてのステップの後、それは私のために働いています。
最初に、Android.Rのインポートがあるかどうかを確認します。クラスの最上部で、これはAndroid studioの自動インポートを有効にすると発生します。
r変数を使用するコードのすべての行をコメント化した後(クラス全体をコメント化するか、...)、アプリケーションを実行してR変数を再生成し、コードのコメントを解除できます。
私の問題は、描画可能なフォルダに「default.jpg」というファイルがあり、何らかの理由ですべてのリソースが解決されなかったことです。そのファイルを削除した後に修正されました!
私も同じ問題に直面しており、stackoverflowで多くの答えを経験しました。次に、この問題の解決に役立つ1つの解決策を見つけました。
AndroidManifest.xmlファイルのパッケージ名を確認してください。別のプロジェクトをコピーして新しいプロジェクトにコピーするときに、変更するのを忘れていました。
IntelliJ 14で
生成されたソースが除外されているかどうかを確認してください。通常、プロジェクト構造-> [モジュール]->パス->コンパイラ出力:「コンパイル出力パスを継承」
以下に関して Crossle Songの答え から
- 押す F4 プロジェクト構造に移動し、左側のSDKを確認します
- [モジュール] ---> [ソース]タブをクリックし、ソースとしてgenとsrcをチェックします
「後でプロジェクト設定を構成するためのUIを提供します...」というメッセージにもかかわらず、これはうまくいきました。
Java_HOME、CLASSPATHの設定の問題を解決します。
Java_pathを設定するときに、Java_HOMEとCLASSPATHをスキップする場合があります。
そのため、環境変数を確認してください。
クラスパス->。;
Java_HOME-> C:\ Program Files\Java\jdk(version)またはJavaがインストールされている場所
そして、エラーが発生する可能性のあるxmlファイルを確認します(ボタン、テキストなどのよく知られたものに名前を付けない)
私の場合(Linux、Android Studio 0.8.6)、以下が役立ちます:
ファイル>プロジェクト構造>モジュール>メインモジュールの選択>そのファセットの選択>生成されたソース
「生成されたファイルのディレクトリ」の値を変更します。
から
MY_PATH/.idea/gen
に
MY_PATH/gen
そのコードがコンパイルされていない場合、apkはビルドされ、正常に実行されます
ただし、Android Studioエディターは、すべてのサブパッケージクラスでmypackage.R.anythingを「解決できない」と強調表示します
私の場合:
参照のコピー Rファイル;つまり、gen/<package>/Rを右クリックして、リファレンスをコピーします。次に、それを解決できないコードのRに貼り付けます。
それは私のためにそれを解決しました(ここで他のすべてを試した後)。なぜそれが正直に機能したのかはまだわかりません。
私は同じ問題を抱えていて、余分なライブラリを削除することで修正しました。
この解決策を試すには、[ファイル]> [プロジェクト構造]に移動します(Macでは、コマンド "Apple;"を使用できます)
次に、左側のタブでアプリを選択します。依存関係タブに移動して、余分なライブラリを削除します。
これらの答えはどれも私を助けませんでした!
私の問題は問題ではありませんでした!プログラムは完全にコンパイルしてデバイス上で実行できますが、IDEにより、面倒な構文エラーが発生しました。 「R.」を含むコード行に下線を引いています。
この問題を解決する方法:
「myapp/gen/com.example.app/」フォルダーに次の3つのクラスを追加しました。
BuildConfig
package com.example.app;
public final class BuildConfig {
public final static boolean DEBUG = true;
}
マニフェスト
package com.example.app;
public final class Manifest {
}
R
package com.example.app;
public final class R {
}
build.gradle(モジュールアプリ用)でビルドツールのバージョンを確認します。次に、Android SDKマネージャーに移動して、バージョンがインストールされていない場合はインストールされているかどうかを確認するか、ビルドツールのバージョンを以下のようにインストールされているバージョンに変更します。
Android {
buildToolsVersion "22.0.1"
..
..
..
}
Eclipseからプロジェクトをインポートするときにこのエラーが発生しました。その理由は、いくつかのxmlファイルにエラーがあったためです。すべてのXMLファイルでエラーを確認します。 androidmanifest.xml、値、テーマ、スタイル、レイアウトフォルダーなどを含みます。xmlの警告は問題ありませんが、エラーはこのエラーを生成します。
その後、クリーンプロジェクトを実行して再構築します。
プロジェクトをクリーンにしてから、プロジェクトをgradleファイルと同期します。
生成されたソースをベースプロジェクトディレクトリにないディレクトリに移動するように設定したため、intellij 2016.1でこの問題が発生しました。
たとえば、Androidファセットでは、「生成されたソース」の下に次のものがありました。
Directory for generated files: <project dir>/target/intellij-gen
これを<project dir>/gen
に変更すると、問題はなくなりました。
同様に、それを<project dir>/gen2
に変更したときも問題はなくなりました-しかし、次のようにして、もう一度コンパイルできるように徹底的にクリーンアップする必要がありました。
rm -rf ~/.IdeaIC2016.1/system/compile-server/<project>_<hash>
生成されたすべてのディレクトリとtarget
dirを削除します。
私にとって、Android Studio 1.5.1での解決策は、プロジェクト全体を少し異なる名前で再作成することでした。
パッケージの代わりに「Kommentator」という名前が付けられたいくつかの場所のため、アプリ名「Kommentator_AS」を処理しなかったと思います。
これと同じ問題がありました。パッケージ名は、次の3つのファイルのうち2つで間違っていました。パッケージ名を手動で更新すると、すべてが再び機能し始めました。
gen/com/example/app/BuildConfig.Java
gen/com/example/app/Manifest.Java
gen/com/example/app/R.Java
これらのファイルを変更したことがないので、何がそれらを変更したのかはわかりません。
私の場合、「R.layout.account_list」ではなく「Android.R.layout.account_list」が参照されていることがわかりました。 「Android」を削除するだけです。問題を修正できます。焦点を合わせすぎると見過ごされることがあるので、この助けを期待してください。
https://stackoverflow.com/users/1373278/hoss によって投稿されたソリューションは、私にとってはうまくいきました。ホスの投稿にまだコメントできないため、ここで複製しています。
問題のアクティビティファイルからimport Android.R;
を削除します。
私のセットアップ:
Android Studio 1.2.2
1つのMacからGitにプロジェクトをエクスポートしました(すべてが機能していました)。次に、Gitから別のMacにプロジェクトをインポートしました。リソースファイルの解決を停止したとき。
私はこのスレッドですべてを試しました:
アクティビティJavaファイルからimport Android.R;
を削除する以外、何も機能しませんでした。
今後この問題を回避するには、.idea
フォルダーを.gitignore
ファイルに追加します。 Android Studioには、gitignore用のgitからの素敵なプラグインがあります。このプラグインをインストールし、.idea > Add to .gitignore
を右クリックします
正常にクリーンとリビルドを試みた後、res
フォルダーに破損ファイルがないかどうかを確認してください。
私の場合、破損した.png
ファイルがすべての問題を引き起こしました。