当前位置: 首页 > 知识库问答 >
问题:

maven-bundle-plugin失败,出现“无效的类文件module-info.class”

令狐辉
2023-03-14

添加了包含JPMS模块的依赖项后,maven-bundle-plugin(3.3.0版)失败,原因是:

[INFO] --- maven-bundle-plugin:3.3.0:bundle (default-bundle) @ my-bundle ---
[ERROR] Bundle myGroup:my-bundle:bundle:1.0 : 
        Exception: java.lang.ArrayIndexOutOfBoundsException: 19
[ERROR] Bundle myGroup:my-bundle:bundle:1.0 : 
        Invalid class file module-info.class (java.lang.ArrayIndexOutOfBoundsException: 19)

似乎插件试图(但失败了)分析module-info.class,它在OSGi上下文中应该是不相关的。

共有1个答案

颜志学
2023-03-14

将bundle插件升级到3.5.0版本解决了这个问题:

<plugin>
  <groupId>org.apache.felix</groupId>
  <artifactId>maven-bundle-plugin</artifactId>
  <version>3.5.0</version>
</plugin>

我还不得不将maven升级到3.5,因为该插件的最新版本在maven 3.3上引发了一个NPE:

Failed to execute goal org.apache.felix:maven-bundle-plugin:3.5.0:bundle (default-bundle) on project my-bundle: Execution default-bundle of goal org.apache.felix:maven-bundle-plugin:3.5.0:bundle failed. NullPointerException

另见FELIX-5698

更新:请在maven Central查看bundle插件的最新版本。最新版本的maven可以在他们的下载页面上找到。

 类似资料:
  • 一直在尝试gluon的client-maven-plugin,但反复得到; [Thu Aug 15 21:56:33 BST 2019][FINE]验证AssetCatalog得命令:null--输出-格式人类可读文本--app-icon AppIcon--输出-部分-信息-plist.../target/client/macos-x86_64/GVM/TMP/partial-plists/ass

  • OpenPatricianDisplay-0.5.0-Snapshot未指定主类 OpenPatricianDisplay-0.5.0-Snapshot无法启动JVM 看看Windows和Linux包的cfg文件就会发现它们是不同的。当用Windows中的替换Linux时,会产生不同的错误。因此,我不认为他们的不同是原因。在Linux上使用插件创建一个单一模块JavaFX演示应用程序。为了弄清楚它

  • 我正试图使用rpm maven插件,但我得到以下错误: 这是我的pom:

  • 我正在使用maven-shade-plugin在构建的包阶段重新定位一些包。我还使用maven-bundle-plugin生成一个清单。问题是bundle插件在shade插件之前运行(在过程类阶段),并且在生成的清单的导出中没有包含任何我的shade包。 -- 根据要求,我的POM的阴影和捆绑部分: 从这里取的

  • 安装失败,消息为无效文件:K:\project\app\build\中间产品\spit-apk\with_ImageProcessor\debug\slices\slice_0.apk.解决此问题的方法可能是卸载现有版本的apk(如果存在),然后重新安装。 警告:卸载将删除应用程序数据! 是否要卸载现有应用程序? 我运行我的项目在Android Studio2.3 beta 3.

  • 问题内容: 我试图创建使用 我用这个命令来构建项目。 我设置是因为我想在 java8中 运行它。 这是文件。 之后,我运行此命令来构建项目。然后我运行,但出现此错误。 appengine-maven-plugin:1.3.1运行失败,非零退出 我用 -e 重新运行命令,这就是我得到的。 我了解只有一个错误 项目未定义Maven所需的最低版本。 我在pom中设置了最低版本,但仍然存在相同的错误。 在