0

私は RoboGuice 2 を起動して実行しようとしています。 guice-3.0-no_aoproboguice-2.0、およびjsr305-1.3.9 jar をプロジェクトのクラスパスに追加しましたが、以下のコードを試すと次の例外が発生します。

E/AndroidRuntime(1143): java.lang.RuntimeException: Unable to instantiate activity 
ComponentInfo{com.wickedlynotsmart.myfirstapp/com.wickedlynotsmart.myfirstapp.acti
vity.MainActivity}: java.lang.ClassNotFoundException: Didn't find class 
"com.wickedlynotsmart.myfirstapp.activity.MainActivity" on path: 
/data/app/com.wickedlynotsmart.myfirstapp-2.apk

MainActivity.java

public class MainActivity extends RoboActivity {

    @InjectView(R.id.helloTextView)
    private TextView helloTextView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        helloTextView.setText("Hello, My First App!");
    }

    //...     

}

MyFirstAppModule.java

public class MyFirstAppModule extends AbstractModule{

    @Override
    protected void configure() {
        // TODO Auto-generated method stub      
    }

}

roboguice.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="roboguice_modules">
        <item>com.wickedlynotsmart.myfirstapp.module.MyFirstAppModule</item>
    </string-array>    
</resources>

誰かがそれを理解するのを手伝ってくれますか?

ありがとう。

編集: Android API 17 を Android 開発ツールで使用しています。

4

2 に答える 2

1

およびjar をプロジェクトのビルド パスからguice-3.0-no_aop削除しました。roboguice-2.0jsr305-1.3.9

プロジェクト内のフォルダーに次のjarを追加するとlibs、プロジェクトが機能しました。

1. roboguice-2.0.jar
2. guice-3.0-no_aop.jar
3. javax.inject.jar
于 2013-05-15T21:26:35.190 に答える
0

ADT に問題があります。Android Development Toolkit v22 を使用した ADT と Android Development Toolkit v21 を使用した Eclipse JUNO の両方で Roboguice を試しました。ADT v21 を使用した Eclipse JUNO で動作しました。

ADT で、jar ファイルを libs フォルダーに配置すると、ClassNotFoundException. Eclipse JUNO では、jar ファイルをlibsフォルダーに配置すると、jar ファイルが自動的に作成され、Android 依存関係の下に配置されます。これは ADT では発生しません。

jar ファイルをビルド パスに追加しても機能しませんでした。

于 2013-06-03T22:29:10.860 に答える