0

我正在尝试使用 RoboGuice 2 启动并运行,我已将guice-3.0-no_aoproboguice-2.0jsr305-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 开发工具的 Android API 17。

4

2 回答 2

1

从项目的构建路径中删除guice-3.0-no_aop,roboguice-2.0和jars。jsr305-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 Dependencies 下。这在 ADT 中不会发生。

将 jar 文件添加到构建路径也不起作用。

于 2013-06-03T22:29:10.860 回答