Java me 在PushRegistry中注册Midlet时ClassNotFoundException trown

Java me 在PushRegistry中注册Midlet时ClassNotFoundException trown,java-me,push,classnotfoundexception,midlet,Java Me,Push,Classnotfoundexception,Midlet,我犯了一个奇怪的错误,我查不清到底。当我在Push注册表中注册midlet时,它抛出ClassNotFoundException。我使用了API文档中非常标准的实现,只是url被修改了 // MIDlet class name String midletClassName = this.getClass().getName(); // Register a static connection. String url = "sms://:2049"; // Use an unrestrict

我犯了一个奇怪的错误,我查不清到底。当我在Push注册表中注册midlet时,它抛出ClassNotFoundException。我使用了API文档中非常标准的实现,只是url被修改了

//  MIDlet class name
String midletClassName = this.getClass().getName();
//  Register a static connection.
String url = "sms://:2049";
//  Use an unrestricted filter.
String filter = "*";
PushRegistry.registerConnection(url, midletClassName, filter);
出于某种原因,这会引发java.lang.ClassNotFoundException!当我查看JAD时,它看起来不错:

MIDlet-1:AlarmHandler,sweoch.test.AlarmHandler

这是调试时midletClassName等于的类。那么为什么会出现这种异常呢?

您是否使用从jad复制的类名和硬编码到参数中的类名对其进行了测试?如下所示:
PushRegistry.registerConnection(url,“sweoch.test.AlarmHandler”,filter)
yes,但仍然不走运。我可能已经折射了项目并添加了包(sweoch.test),但为什么这会影响推送注册表?我现在已经将其缩小到模拟器平台,我使用的是诺基亚S40 DP 2.0 SDK 1.1,它抛出了未找到的类,如果我运行标准Java Micro Edition SDK 3.0,它似乎工作正常。您是否检查了部署到诺基亚的jar文件的内容?jar中是否存在
sweoch.test.AlarmHandler.class
文件?当我在Netbeans
MIDlet-1:AlarmHandler,sweoch.test.AlarmHandler
中打开jar时,jar在清单和结构中都有该类,所以不是。。。