2

私は動作する非常に単純なアプリケーションを持っていますが、roboguiceを追加するとスローされます

java.lang.RuntimeException:アプリケーションをインスタンス化できませんcom.MyFirstApp.MyFirstApplication:java.lang.ClassNotFoundException:com.MyFirstApp.MyFirstApplication

アプリケーションクラス:

public class MyFirstApplication extends RoboApplication {

    @Override
    protected void addApplicationModules(List<Module> modules) {
        //modules.add(new DefaultModule());
    }
}

MainActivity:

public class MainActivity extends RoboActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

マニフェスト:

<manifest 
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.MyFirstApp"
    android:versionCode="1"
    android:versionName="1.0" >

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

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:name="MyFirstApplication">
        <activity
            android:name="com.MyFirstApp.Activities.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action 
                    android:name="android.intent.action.MAIN" />
                <category 
                    android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

guice-2.0-no_aop.jarとroboguice-1.1.3.jarをassetsフォルダーに配置し、ビルドパスに追加しました。

ロボパーツを外すと正常に動作します。誰かが私が間違ったことを教えてもらえますか?

4

2 に答える 2

6

さて、私は問題が何であるかを知りました。SDK v17 +を使用していましたが、そのバージョンでは、外部ライブラリを「libs」フォルダーに配置する必要があり、libsフォルダーにのみ配置する必要があります。だから、すべてのチュートリアルは、間違ったアセットフォルダに置いたところを見つけました。

私が探していた答えを得た場所へのリンク:http://groups.google.com/group/roboguice/browse_thread/thread/474116b05205​​0ae2

于 2012-04-16T14:28:44.203 に答える
1

まず第一に、から拡張するRoboApplicationのはRoboGuice 1.xであり、実際にはRoboGuice 2.0を使用する必要があります(これを行う必要はありません)。さて、あなたの例外を除いて、あなたのアプリケーションクラスは本当に com.MyFirstApp.MyApplicationですか?nameそうでない場合は、一致するように属性を更新する必要があります。

于 2012-04-08T18:19:28.957 に答える