SoapUI 加载插件抛出安全异常 - 有未签名的 class 文件

SoapUI Load Plugins throws Security Exception - has unsigned class files

我正在尝试为 SoapUI(开源)创建一个新插件。我已经按照 steps mentioned here 创建了一个插件。

placed the jar file in plugins folder 中构建项目后 user\.soapuios\plugins。[因为插件管理器不会提供免费版本]

启动 SoapUI 时,插件不会 loaded.Its 抛出以下错误 plugin has unsigned class

SoapUI 5.2.1 OpenSource
Windows 7

2016-01-11 17:02:58,736 ERROR [SoapUI] An error occurred [The plugin 'C:\Users\xxxx\.soapuios\plugins\testplugin-1.0.0.jar' has unsigned class files.], see error log for details
2016-01-11 17:02:58,752 ERROR [errorlog] java.lang.SecurityException: The plugin 'C:\Users5372\.soapuios\plugins\testplugin-1.0.0.jar' has unsigned class files.
java.lang.SecurityException: The plugin 'C:\Users5372\.soapuios\plugins\testplugin-1.0.0.jar' has unsigned class files.
    at com.eviware.soapui.plugins.ProductBodyguard$JarVerifier.verify(ProductBodyguard.java:107)
    at com.eviware.soapui.plugins.ProductBodyguard.isKnown(ProductBodyguard.java:39)
    at com.eviware.soapui.plugins.PluginManager.loadPlugins(PluginManager.java:93)
    at com.eviware.soapui.DefaultSoapUICore.loadPlugins(DefaultSoapUICore.java:155)
    at com.eviware.soapui.DefaultSoapUICore.init(DefaultSoapUICore.java:133)
    at com.eviware.soapui.StandaloneSoapUICore.<init>(StandaloneSoapUICore.java:38)
    at com.eviware.soapui.SoapUI$SoapUIRunner.run(SoapUI.java:721)
    at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.awt.EventQueue.access0(Unknown Source)
    at java.awt.EventQueue.run(Unknown Source)
    at java.awt.EventQueue.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
2016-01-11 17:02:58,783 WARN  [SoapUI] Plugin 'testplugin-1.0.0.jar' is not loaded because it hasn't been signed by SmartBear Software.

根据 this thread 看起来 从 5.2.1 开始 标准 SoapUI 将不接受来自未知来源的插件。 社区管理员(SmartBear 员工)写道:

As far as I know some changes with the plugin manager were implemented in SoapUI 5.2.1. Since that, only SmartBear-made plugins can work with the new manager.

I can suggest the following options for you:

  • You can send your plugin at soapuiplugins@smartbear.com. Our team will review it and add to the product.
  • You can consider moving to SoapUI NG - user-made plugins are allowed here. SoapUI NG is the newest SoapUI version and it is included into Ready! API.

如果您检查线程,您可能还会发现一些其他可能对您的情况有所帮助的建议。 (有一个 hack 可以绕过此保护以进行测试)