java - 创建 shim OSGi 包或映射包名称
问题描述
很久以前,有人创建了名为 OSGi 的包,并在各处org.apache.commons_logging
使用它。Require-Bundle
现在它无处不在。我想更新 Commons Logging 库,而不必重新打包它来更改原始org.apache.commons.logging
符号名称。其他第 3 方捆绑包需要不带下划线的捆绑符号名称。现在,我不想有两个完全相同的包,只是符号名称略有不同。
是否可以创建某种名为 shim 的包
org.apache.commons_logging
,它只会导入官方org.apache.commons.logging
包导出的所有内容并重新导出它?是否可以使用一些可以帮助我完成此类任务的聪明 Maven 插件来做到这一点?不幸的是,Commons Logging 并不是这里唯一受影响的捆绑包。
我maven-bundle-plugin
通常使用 Apache 的,我们正在使用 Eclipse 的 Equinox OSGi 实现进行开发。
更新
Require-Bundle: org.apache.commons.logging;visibility:=reexport
可能是解决方案。我对吗?
解决方案
推荐阅读
- c# - NLog 布局渲染器似乎在配置中不起作用
- r - 将嵌套 tibble 的所有列取消嵌套到 tibble 列表
- javascript - Vuejs中列表对象中文本的样式部分
- python - 如何防止程序等待接收来自客户端的消息?
- ruby - 如何将平面 Ruby 散列解析为嵌套散列?
- drupal - 在 drupalLogin() 上的 Drupal 8 功能测试失败
- sharepoint - 使用 Sharepoint 生成 JIRA 票证
- angular - 如何对多页的加密文档实现全文搜索?
- 3d - 我的 cgal 代码 3d delaunay 三角测量错误
- jquery - 检查当前是否通过搜索过滤了 DataTables 元素