2013年6月4日 星期二

Android SDK Manager 更新後,出現 Unable to resolve superclass of Lcom ‏錯誤

最近在 eclipse 打開 Android SDK Manager,出現有新的更新,
更新完,以前的舊專案,可以編譯但在手機上執行時,卻出現以下錯誤

06-03 11:27:16.168: W/dalvikvm(21594): Unable to resolve superclass of Lcom/***/MainActivity; (38)
06-03 11:27:16.168: W/dalvikvm(21594): Link of class 'Lcom/***/MainActivity;' failed


但如果是新開的專案,就不會有此錯誤。
 
後來參考:http://www.csdn123.com/html/blogs/20130516/13235.htm
似乎是 .classpath 檔案的影響

我也比較舊專案和新專案 .classpath 檔有何不同
發現新專案的 com.android.ide.eclipse.adt.LIBRARIES 多了  exported="true"
於是將舊專案資料夾底下的 .classpath 檔,也加上 exported="true" 就好了

修改如下
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

沒有留言:

張貼留言