Skip to content
BJ Hargrave edited this page Nov 22, 2021 · 10 revisions

Bnd/Bndtools 6.1.0

See the Release section of the README for where to find Bnd/Bndtools.

Bndtools

  • Fixed undo functionality for Bnd and Bndrun text editor views.

Bndtools m2e

  • Fixed context launching regression in 6.0.0 (In versions prior to 6.0.0, you could launch a test/run configured using the bnd maven plugins by right-clicking anywhere on the project. In 6.0.0 there was a regression and this functionality was lost - you have to right-click on the .bndrun file itself to get the Bnd launcher menu items.)

Bnd

  • New vcompare, vmax, and vmin macros for version comparison.
  • The biz.aQute.bndlib, biz.aQute.repository, and biz.aQute.resolve artifacts were changed to no longer include OSGi API packages. Their poms have the proper dependencies so that these jars work properly in maven and gradle builds where transitive dependencies in poms are followed. But if you use these jars in a Bnd Workspace build, you may need to update your -buildpath to include the necessary OSGi dependencies to build properly.
  • The ProjectLauncher executable() method now properly handles merged -includeresource instructions which means that exports will include resources from the merged -includeresource instructions.
  • -includeresource now supports flatten and rename directives when unrolling a jar.
  • The Jar class was fixed to reduce memory consumption when reading a jar file from an InputStream.

Bnd Command Line

  • None.

Documentation

  • -resolvedebug instruction now has a doc page.
  • Minor documentation improvements and bug fixes.

Bnd Maven Plugins

  • The bnd-process-tests goal is now disabled when the system property maven.test.skip is set to true.
  • Values set for Bundle-SymbolicName and Fragment-Host are no longer overridden in the bnd-process-tests goal.
  • The -include instruction in bndrun files can now reference maven properties. This allows the maven properties to influence the included files.

Bnd Gradle Plugins

  • The tasks for the biz.aQute.bnd.builder plugin for non-Bnd Workspace builds can now be configured via the new properties property to work with Gradle's Configuration Cache.
  • Fixed regression where the bnd_cnf property was not processed.
  • The -include instruction in bndrun files can now reference gradle properties. This allows the gradle properties to influence the included files.

Backward compatibility

  • The biz.aQute.bndlib, biz.aQute.repository, and biz.aQute.resolve artifacts were changed to no longer include OSGi API packages. Their poms have the proper dependencies so that these jars work properly in maven and gradle builds where transitive dependencies in poms are followed. But if you use these jars in a Bnd Workspace build, you may need to update your -buildpath to include the necessary OSGi dependencies to build properly.
  • Bndtools is built to run on Eclipse 2020-06 (4.16) or later. So Bndtools may not run on older versions of Eclipse.
  • Bndtools m2e is built to run on Eclipse m2e 1.16.0 or later. So Bndtools m2e may not run on older versions of Eclipse m2e.
  • The Bnd Maven plugins require a minimum of Maven 3.3.9.
  • The Bnd Gradle plugins require a minimum of Gradle 6.7 for Java 8 to Java 15, Gradle 7.0 for Java 16, and Gradle 7.3 for Java 17.
  • The Bnd Gradle plugins and tasks underwent a large update in 6.0 to modernize their implementations and prepare for Gradle 7 and newer Gradle idioms. All Bnd Gradle task properties are now Gradle Properties and should generally be set using an assignment in your build script. A number of previously deprecated task properties have been removed. The conventions are now deprecated and replaced by extensions. See above for more details.

Known Issues

  • Eclipse m2e has a bug which can result in build looping. If you experience this, update Eclipse m2e to 1.18.2 or later which seems to have fixed the issue.

  • Windows 10 users: Windows 10 Defender significantly slows down Eclipse, reason being Windows 10 Defender scanning the JAR files. The problem has been reported to Microsoft here. Until then, a workaround to this problem is to add Eclipse root directory to Windows 10 Defender’s exclusion list, detailed steps are shared here.

    Note: This is not just an Eclipse issue on Windows 10.

    See also Bnd Tips for Windows users.

Clone this wiki locally