You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ocean Petrel 2022插件打包时tbb库第三方验证失败求助

问题描述

使用Ocean开发Petrel 2022插件时,PIP项目构建后运行PluginPackager出现验证失败,报错如下:

2>  ERROR Plugin includes library that is already distributed by Petrel or another plugin, but it is not identical.
2>  Plugin includes tbb, which conflicts with the same library in .

错误未明确指出冲突的具体库路径,排查后发现Petrel安装目录及已安装插件中仅存在3个tbb.dll实例,且版本均与插件使用的tbb.dll不同。

根据AcceptanceChecklist.xml的规则:

The plug-in may use 3rd party libraries deployed by Petrel. The Components list documents this set of 3rd parties.

  • The plug-in must not deploy any library on this list, unless a different version is required

按此规则本不应触发验证错误,需解决第三方库部署时的验证通过问题。

解决方法
  • 标记第三方库为私有部署:在插件的PackageInfo.xml中,为tbb.dll添加<Private>True</Private>属性,告知PluginPackager该库是插件私有依赖,无需与Petrel自带版本做一致性校验。示例配置片段:
    <File Source="tbb.dll" Target="tbb.dll">
      <Private>True</Private>
    </File>
    
  • 核对Components列表的版本规则:查阅Petrel官方提供的Components列表,确认tbb的允许版本范围。若插件使用的版本不在允许范围内,需调整为兼容版本,或向官方申请版本豁免。
  • 清理冗余依赖:检查项目构建输出目录,确认是否有未预期的tbb.dll被打包。通过调整项目引用属性,将Petrel自带的tbb设置为“不复制到输出目录”,仅保留插件需要的私有版本。
  • 临时跳过特定校验:在PluginPackager命令行参数中,使用-IgnoreConflicts类参数临时跳过tbb库的校验(注意:仅用于测试,正式发布前需确认合规性)。

内容的提问来源于stack exchange,提问作者jslmsca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 20:01:02