前几天开发RCP应用过程中遇到了一个问题(其实也是经常遇到的问题),通过Run configure的方式运行RCP程序,功能正常,但是导出Product后在运行,发现问题多多,咋回事呢?其实一般的情况都很好解决,我遇到的问题和解决办法主要有2点:
1. 看看是否有什么包或资源没有被导出(不该发生的错误,纯属个人疏忽),解决办法,导出缺失的包和资源就好了。
2. 有些eclipse API的返回值在两种情况下(configure/product)返回值不一样,导致运行结果不一样。比如FileLocator.resolve()方法在两种情况下返回的结果是不一样的,如果出现问题,可以从这方面考虑找一下原因,最好用一些确定在任何情况下都能返回相同结果的API,比如FileLocator.toFileURL()在需要将eclipse格式的URL转换层File协议格式的URL时在2中情况下时一样的,如果用FileLocator.resolve则不一样。