异常
The plugin distribution bundles IDE packages 'com.intellij.uiDesigner', 'com.intellij.uiDesigner.core'. Bundling IDE packages is considered bad practice and may lead to sophisticated compatibility problems. Consider excluding these IDE packages from the plugin distribution. If your plugin depends on classes of an IDE bundled plugin, explicitly specify dependency on that plugin instead of bundling it.
原因
如图,查看编译成功的插件包,发现里面引入了 com.intellij.uiDesigner.core
中的类,而因为兼容性问题不建议引用,所以未通过审核。
而这些文件来源于 GUI Desginer 创建的图形界面。
解决
在 Settings
中的 Editor
下的 GUI Designer
面板中取消 Automatically copy form runtime classes to the output directory
。如果选中此选项,则在 com.intellij.uiDesigner.core
编译项目时,将包中的类将复制到配置的输出目录,所以取消后就不会把这些类编译到插件包中。
注:必须将之前编译生成的插件包删除后,再重新编译生成。参考官网解释:GUI Designer。