2010-12-16 84 views
0

我得到的是:如何调试黑莓验证错误?

"Module 'my-app' has verification error 'xxxx' at offset '1646'

它根据blackberry,包含了也没有用第三方developpers的信息。

我看着buglog(使用'catfail'选项),我发现的只是它崩溃的方法,而不是为什么。有趣的是,当我从应用程序中删除此方法时,它仍然记录导致错误的相同方法。这有点奇怪。

额外的信息:我的应用程序中包含LWUIT和blackberryport

我也看到了KB article DB-00744,这表明验证错误,可能意味着以下任何“14”的错误。它是随机的,还是有这种逻辑背后的方法?

+0

我collegue发现错误:一外部图书馆支持触摸,并且我们正在为不支持触摸的黑莓4.6进行构建。 – 2010-12-16 15:35:23

回答

2

I looked in the buglog (with the 'catfail' option), and all I found was a method on which it crashed, not why. funny thing is, when I remove this method from my application, it still logs the same method for causing the error. It's kind of strange.

您必须在您的构建地方犯了错误/部署/测试过程....假设你正在谈论的应用程序的自己的方法对一个,不只是一些方法,你的应用程序调用。再试一次。

Is it random? or is their a method behind this logic?

人们会认为这些是已发现与在黑莓平台的不同版本不同的客户应用验证错误做出贡献的所有问题。可以说,其中有一些看起来有点奇怪。例如不必要的导入(3)应该是无害的,并且错误地使用“package private”(4)应该会导致Java编译错误......我曾想过。而且我不喜欢这样一个事实,即名单通常不会说为什么这些措施可能是必要的。

从这个笔记判断,我觉得黑莓开发工具链中的一些工具的设计相当糟糕。 (当然,它不能很难验证生产信息的诊断,而不是无证“内部”错误代码和一些提到的“气味”之类的解决方法错误的东西。)

+0

看起来好像很多奇怪的名字都与名称冲突的可能性间接相关 - 甚至可能是内部成员变量。虽然看起来很奇怪,因为大概这些名字没有保存在字节码中...... – 2010-12-20 04:40:07

+0

不必要的导入对生成的代码没有任何影响。而“缺失”可见性要么是无害的,要么是编译错误。如果其中任何一个都不是真的,那么Java编译器就是bug。 – 2010-12-20 05:03:39

+0

我更多地指私人包的使用。也就是说,拥有更好的工具是很好的 - 如果这在运行时是可捕获的,那么编译时间也是可以捕捉的,并且不应该是猜测游戏。 (我目前在12个BB SDK模拟器中有4个有相同的问题 - 其中很多都运行相同的操作系统版本。) – 2010-12-21 03:33:35