2013-08-21 75 views
0

我有一个完美工作的android项目。它有三个活动:MainActivity,CorrectAnswerActivity和UserFailed。我在CorrectAnswerActivity和UserFailed上使用Google Play Services api,因此这些扩展了BaseGameUtil。在android项目中更改包名,现在获得noclassdeffounderror

这一切都很好,直到我认为改变我的包名(因为我改变了我的游戏名称)是一个好主意。所以现在当你点击MainActivity上的一个按钮时,你会发现Failed或Correct,我得到noclassdeffounderror,就好像它找不到CorrectAnswerActivity或UserFailed。

我用新的软件包名称和其他提到的地方更新了我的Manifest。

08-20 21:45:29.765: E/AndroidRuntime(5549): 
Caused by: java.lang.NoClassDefFoundError: com.blackcrowndev.numbers.CorrectAnswerActivity 
08-20 21:45:29.765: E/AndroidRuntime(5549):  at com.blackcrowndev.numbers.MainActivity.onClickGuess(MainActivity.java:254) 

我觉得好象有事情做与

public class CorrectAnswerActivity extends BaseGameActivity 
implements View.OnClickListener { 

但我没有改变库中任何东西。

感谢您的帮助球员。我对Java和Android开发非常陌生,所以请让我知道是否需要提供更多信息。我将离开你我的清单文件:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.blackcrowndev.numbers" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="14" 
     android:targetSdkVersion="18" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/Theme.Password" > 
     <meta-data 
      android:name="com.google.android.gms.games.APP_ID" 
      android:value="@string/app_id" /> 

     <activity 
      android:name="com.blackcrowndev.numbers.MainActivity" 
      android:label="@string/app_name" 
      android:screenOrientation="portrait" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.blackcrowndev.numbers.CorrectAnswerActivity" 
      android:label="@string/title_activity_correct_answer" 
      android:screenOrientation="portrait" > 
     </activity> 
     <activity 
      android:name="com.blackcrowndev.numbers.UserFailed" 
      android:label="@string/title_activity_user_failed" 
      android:screenOrientation="portrait" > 
     </activity> 
     <activity 
      android:name="com.blackcrowndev.numbers.HowToPlay" 
      android:label="@string/title_activity_how_to_play" 
      android:screenOrientation="portrait"> 
     </activity> 
    </application> 

</manifest> 
+0

你有没有干净并且你可以确认'CorrectAnswerActivity'包含的是什么包? – chrylis

+0

我没有清理整个项目 我的所有活动都在com.blackcrowndev.numbers – perryratcliff

+0

删除所有在java下添加的jar文件建立path.Clean Project.Now添加罐子回到java build path.Clean再次。 –

回答

1

右键单击项目,然后选择属性 - > javabuild路径 - >选择需要为了出口和清理项目。

+0

这似乎没有帮助。 – perryratcliff

1

这似乎是你遇到ADT错误的麻烦。

检查 - https://code.google.com/p/android/issues/detail?id=55304

还有一些类似的问题和答案在StackOverflow上

ClassNotFoundException after changing extension from Activity to BaseGameActivity

知道变通办法“进入属性 - >订单和出口的应用项目,并检查“ Android私人图书馆“,适用于所有图书馆项目。 (在你的情况,谷歌Play服务库应设置为“Android的私人图书馆。

0

更改包名在清单文件中,对应于每一类的文件,如果有什么不更名!