1 问题

        在正常使用ctk框架开发工程时,gis插件突然开始加载失败,报错信息Failed to install plugin

2 分析

        ①常见原因是插件中必要的结构文件写错,检查activator.h及cpp、MANIFEST.MF、服务定义等文件,并无书写规范问题。还需要尝试删除plugins.db文件!!!(尤其涉及插件加载位置变化时)。

        ②重新编译未能加载插件的工程,问题未解决。

        ③将本机生成的dll插件放到其他机器上,其他机器能正常加载。考虑是该插件的三方依赖库或本机环境变量导致的问题。

        ④将该插件dll放入depends,检查三方库依赖情况,查到缺失某dll,从其他机器导入,问题仍存在。

        ⑤用调试器调试软件,对比Visual Studio中本机与其他机器在插件加载时的output框(显示动态库、静态库、线程释放信息那个),发现在加载问题插件时有部分动态库引用的位置不同!!!

3 解决

        检查后发现机器最近搭建了java环境(配置了环境变量),而插件引用的第三方库与java环境中部分三方库同名,因而导致插件加载了java环境中的同名动态库而非三方库中的,导致插件加载不成功。

        修改环境变量,放弃java环境,问题解决。

 

Logo

一站式 AI 云服务平台

更多推荐