"type cannot be resolved"エラーが出た時の対処法
eclipseでビルドを行った時に必要なライブラリーが読み込まれていないことが原因で「type cannot be resolved」関係のエラーが出ることがあります。ここではその対処法を紹介します。
java.lang.Object cannot be resolved の対処法
javaのすべてのクラスのもとになっているObjectクラスが見つからないと次のエラーが発生します。
The type java.lang.Object cannot be rosolved. It is indirectory referenced from required .class file
これを解決するにはまずアプリのプロジェクト上で右クリックして「プロパティ」を選択してプロパティ画面を出します。
右側から「Java Build Path」を選び、タブの中から「Libraries」を選択します。
そこに「Unable to get system library for the project」という項目があります。これはシステムライブラリ(JSE)が見つからないのでObjectクラスを参照できていないということを表しています。
そこで「Add Library」をクリックして出てくる次のようなダイアログから「JRE System Library」を選択して「Next」ボタンを押して次の画面に進み、Finishボタンを押すと、ライブラリーに追加されます。
最後に「Order and Export」タブを開き、「JRE System Library」にチェックをつけてOKボタンを押せば必要なライブラリが追加されてjava.lang.Objectを利用できるようになります。
android.content.context cannot be resolved の対処法
ObjectのJREファイルがインポートされていないことが原因であるのと同様に必要なAndroidライブラリーがインポートされていないと次のようなエラーが出ます。
The type android.content.Context cannot be rosolved.
これもプロジェクトのプロパティ画面を開き、「Java Build Path」の「Libraries」タブの「Add Library」ボタンをクリックして下の画像のように「Android Classpath Container」を選んで次に進み、「Finish」ボタンを押します。
すると「Android x.x」(x.xはバージョン番号)というライブラリー群が追加されるので「Order and Export」タブに切り替え、「Android x.x」にチェックをつけます。
これでエラーがなくなって再びAndroidライブラリーが使えるようになります。