搜索

8.3. import-Package 标头不完整

download PDF

如果已经安装了所有必需的功能和捆绑包,您仍然会收到 ClassNotFound 错误,这意味着捆绑包 MANIFEST.MF 文件中的 Import-Package 标头不完整。在生成您的捆绑包的 Import-Package 标头时,maven-bundle-plugin (请参阅 第 5.2 节 “修改现有的 Maven 项目”)是一个很好的帮助,但您应该注意以下几点:

  • 确保将通配符 * 包括在 Maven bundle 插件配置的 Import-Package 元素中。通配符指示插件扫描您的 Java 源代码,并自动生成软件包依赖项列表。
  • Maven bundle 插件 无法 找出动态依赖项。例如,如果您的 Java 代码明确调用类加载类来动态加载类,则捆绑插件不会考虑它,而所需的 Java 软件包不会在生成的 Import-Package 标头中列出。
  • 如果您定义了 Blueprint XML 文件(例如在 OSGI-INF/blueprint 目录中),则 在运行时自动解析 来自 Blueprint XML 文件的任何依赖项。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.