-
-
Notifications
You must be signed in to change notification settings - Fork 304
Changes in 6.3.1
BJ Hargrave edited this page Jun 7, 2022
·
2 revisions
- This is a maintenance fix for Bnd/Bndtools 6.3.0.
- #5275: ClassCastException in Gradle build after upgrade to 6.3.0.
See the Release section of the README for where to find Bnd/Bndtools.
- Bndtools "Bnd Bundle Path" class path container now supports negation in the
packagesattribute of-buildpathand-testpathclauses. Negated packages are markedNON_ACCESSIBLE | IGNORE_IF_BETTERin Eclipse. - Bndtools "Bnd Bundle Path" class path container can be configured, when using
version=latestorversion=snapshot, to hide the referenced project's folders and just use the referenced project's generated bundle. The classes in a bundle may be transformed and can be different than the classes in a project's folders. This can be configured using thesourceattribute of-buildpathand-testpathclauses. Settingsourceto a value other thanprojectwill not include the referenced project's folders. This is done by marking the referenced project asDISCOURAGED | IGNORE_IF_BETTER. Note that this can cause Eclipse's "Open Type Hierarchy" result to be incomplete due to flaws in how the Eclipse hierarchy search code handles hidden types. See #5250. - Bndtools "Bnd Bundle Path" class path container is updated, when using
version=latestorversion=snapshot, to no longer include the referenced project's folders in the runtime classpath. This changed provide better fidelity since a bundle may contain more or less classes/resources than the project's folders. - When hovering over a macro name in a bnd editor, the hover view will show the decorated value of the macro.
- Fixes to package decoration when using the new packaging goals of
bnd-maven-plugin.
- Bnd adds decoration support for the following instructions:
-conditionalpackage-privatepackage-includepackage-includeresource
- The
-privatepackageinstruction is now also a merged instruction. - A decoration ending in
++will include all unused literals in the decorated result whereas a decoration ending in+will not include unused literals in the result. - Unused literal inclusion in decoration now allows the decoration to add additional entries to the beginning or the end of the decorated item.
- Instruction decoration now supports removal of attributes and non-overwriting of attributes. Prefixing the attribute name with
!means removal. Prefixing the attribute name with~means do not overwrite an existing attribute value. - Fixes to support the Eclipse Transformer project's Bnd Analyzer and Verifier plugins. The re-analyze code path was fixed to properly reset the analyzer and analyze the content again.
- The external plugin handler was enhanced to support external plugins implementing the
PluginandRegistryPlugininterfaces. - The
AnalyzerPlugins andVerifierPlugins now have an invocation ordering which can be influenced by the plugin implementation. - For Java 1.1, the ee name is changed to
JRE. - Added
ServiceCapabilityannotation as convenient way to createosgi.servicecapabilities. -
Callableregistered withmain.threadproperty will not stop theLauncherif the return code is198. - Fixed some bugs that caused Bnd to fail at some points on versions with leading spaces.
- Fixed bugs in signing jar files:
- Bnd now tries to execute the
jarsignertool from theJAVA_HOMEenvironment variable orjava.homesystem property rather than the path of the shell. This means Bnd will generally use the same java installation used to run Bnd to locate and execute thejarsignertool. The Bnd propertyjarsignercan be set to specify the path to thejarsignertool if desired. - The use of Elliptic Curve (
EC) signing keys is now properly supported. - The signing files in
META-INFare now written to the jar immediately after the manifest as this is required forJarInputStreamto be able to properly verify the signature.
- Bnd now tries to execute the
- None.
- The styling of the documentation has added a search bar and indication of when macros and instructions are in effect.
-
bnd-baseline-maven-pluginnow has areportFileconfiguration which names the file to contain the baseline report. The report format is expanded with more detail.
-
BundleTaskExtensionis updated to make the generated manifest available from the task’smanifest.effectiveManifestproperty. - Updated the
groupproperty values for tasks to better match standard gradle task groups.
- 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.
-
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.
Latest Releases
all versions
- 7.1.0 | 7.0.0
- 6.4.1 | 6.4.0 | 6.3.1 | 6.3.0
- 6.2.0 | 6.1.0 | 6.0.0
- 5.3.0 | 5.2.0 | 5.1.2 | 5.1.1
- 5.1.0 | 5.0.1 | 5.0.0
- 4.3.1 | 4.3.0 | 4.2.1 | 4.2.0
- 4.1.0 | 4.0.0
- 3.5.0 | 3.4.0 | 3.3.0 | 3.2.0
- 2.2.0
Gradle
- Plugin
- Build Customizations
- Builder & java-library
- Non-Workspace builds
- PluginManagement
- Using Kotlin
- Kotlin DSL jar config
- AntTasks
- Baselining [beta]
- Blurry Form Text on High-Resolution Displays
- Bnd toolchain parity table
- bnddistribute
- Buildpath Versions
- Conflict with M2E PDE Connector
- Eclipse Logging with Logback
- Hackathon June 2012
- Install bnd on the command line
- Is there a mailing list for bnd
- Launching Framework
- Multi-project build order
- Multi-release JAR support design discussion
- Plans wrt to enRoute
- Reading Eclipse project preferences in bnd
- Release Process
- Requirements for New Repository API
- Windows Locked Files
- WIP ideas ‐ bnd 8.0.0 breaking changes
- XML Attributes on Annotations
- [ant] Loading and Expanding Shared Headers or Properties