我使用Eclipse的单个工作区在同一个工作区中有两个项目。
Project1 - 引用项目#2并且还包含项目2的“Java构建路径” Project2 - 没有引用任何内容
Project1包称为Project1
Project2 pacakge被称为Proejct2
我使用以下命令将Projec2导入Project1:
import Project2.ClassName
编译时收到错误:
Error preverifying class Project1.Launcher Project1 line 0 BlackBerry Java Problem
Error!: Error: preverifier failed: C:\Users\footose\Desktop\eclipse\plugins\net.rim.eide.componentpack4.5.0_4.5.0.16\components\bin\prev ... Project1 line 0 BlackBerry Java Problem
任何建议都很棒
答案 0 :(得分:3)
可能是因为您正在使用的net.rim.eide库中未正确完成预验证步骤。
这个帖子实际上建议preverify the library independently,甚至为每个班级做预先验证过程(完成here)!
注意:preverification是:
设计为在J2ME CLDC(连接受限设备配置)上运行的Java应用程序的开发和部署周期阶段。
预验证在运行时之前对Java字节码执行某些检查 如果第一次验证通过正常,则预验证程序会对类文件进行注释(使用标准Java字节码“属性”,这样这些仍然是普通的旧Java字节码,并且可以在不知道预验证的好处的VM中执行),然后保存带注释的类文件或将它们传递给编译链中的下一个工具。
当KVM尝试运行执行基于J2ME CLDC的应用程序时,它会检查Java类文件以获取这些预验证注释。类文件中的正确注释可以保证进行某些编译时检查,因此KVM可以更快地通过自己的验证和安全检查,并更快地开始执行应用程序。
Sun的CLDC参考实现SDK包含'preverify'工具。您可以在通过javac(或您喜欢的Java编译器)编译代码后使用该工具。
答案 1 :(得分:3)
我在使用默认的Java 6编译器设置时收到此错误。尝试通过转到“属性> Java编译器”并将这些设置搞乱来尝试将它们设置为1.3。
答案 2 :(得分:1)
在尝试任何事情之前删除bin文件夹并重新编译。使用一个JRE系统库构建项目,然后更改为另一个JRE系统库时,可能会发生此错误。
答案 3 :(得分:0)
要正确编译,请右键单击Project1并转到“属性> Java构建路径>项目”。添加Project2作为依赖项,您将能够正确编译。