【发布时间】:2013-03-27 05:28:12
【问题描述】:
我是依赖注入和 roboguice 的初学者。我只想能够在我的应用程序中注入视图和资源。问题是,当我使用 RoboActivity 扩展我的课程时,我得到了 ClassNotFoundException。
package tes.tes;
//imports
public class test extends RoboActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
这是堆栈跟踪:
06-09 13:54:08.887: ERROR/AndroidRuntime(495): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{tes.tes/tes.tes.test}:java.lang.ClassNotFoundException: tes.tes.test in loader dalvik.system.PathClassLoader[/data/app/tes.tes-1.apk]
06-09 13:54:08.887: ERROR/AndroidRuntime(495): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585)
06-09 13:54:08.887: ERROR/AndroidRuntime(495): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
...
06-09 13:54:08.887: ERROR/AndroidRuntime(495): Caused by: java.lang.ClassNotFoundException: tes.tes.test in loader dalvik.system.PathClassLoader[/data/app/tes.tes-1.apk]
06-09 13:54:08.887: ERROR/AndroidRuntime(495): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243
...
还有我的清单
coding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="tes.tes"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".test"
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、roboguice 等的 jar 文件。 我尝试按照文档下载示例代码,但这对我来说太复杂了。 我不知道我错过了什么。
感谢您的帮助。
【问题讨论】:
-
您的类路径 (
tes.tes.test) 看起来很可疑。发布您的AndroidManifest.xml。 -
我已经发布了我的清单。感谢您的快速回复!
-
我想我也应该要求
test类的包!我的错。那么,test类的包名是什么? -
没关系..我更新了..还有什么需要帮助我的吗?
-
你的包命名约定真的很差。考虑使用标准约定 (java.about.com/od/javasyntax/a/nameconventions.htm)