• Intro Headers Instructions Macros Commands
Fork me on GitHub
    • Getting Started
      • How to install bnd
      • Guided Tour
      • Guided Tour Workspace & Projects
      • FAQ - Frequently Asked Questions
    • Concepts and Practices
      • Introduction
      • Concepts
      • Best practices
    • Build and Development
      • Project Setup
      • Generating JARs
      • Versioning
      • Baselining
      • Service Components
      • Metatype
      • Contracts
      • Bundle Annotations
      • Accessor Properties
      • SPI Annotations
    • Dependency and Launching
      • Resolving Dependencies
      • Launching
      • Startlevels
    • Testing
      • Testing
      • Testing with Launchpad
    • Packaging and Distribution
      • Packaging Applications
      • JPMS Libraries
      • Wrapping Libraries to OSGi Bundles
    • Documentation and Tools
      • Generating Documentation
      • Commands
      • For Developers
      • Templates for Workspaces
      • Tips for Windows users
      • Tools bound to bnd
    • Reference Material
      • Reference
      • Headers
      • Instruction Reference
      • Instruction Index
      • Macro Reference
      • Macro Index
      • Plugins
      • External Plugins
    • Configuration and Troubleshooting
      • Settings
      • Errors
      • Warnings
  • Plugins

    Plugins

    Plugins are objects that can extend the functionality of bnd. They are called from inside bnd when a certain action should take place. For example, bnd uses a repository and plugins provide the actual repository implementations. Or for example, the SpringComponent analyzes the Spring files and adds references found in that XML to the imports.

    A plugin is defined as:

    PLUGIN ::= FQN ( ';' \<directive\|attribute\> )*
    

    The following directive is defined for all plugin:

      path:   A path to the jar file that contains the plugin. The directory/jar at that location is placed on your classpath for that plugin.  

    Tagging of repository plugins

    Repository plugins are usually referenced in cnf/build.bnd and implement the Tagged interface.

    The tags property of repositories’ configuration allows to add a comma separated list of tags to a repository. These tags will be used for filtering a list of repositories. For example the -runrepos instruction in .bndrun considers only those repositories for resolution which have either the resolve tag or no tags property defined. This allows including and excluding repositories based on their tags.

    Index

    Ant Workspace Plugin
    Ensures that when a new project is created it also has a build.xml for an ant build
    AspectJ Plugin
    Weave an executable JAR during compile time (experimental)
    Blueprint Plugin
    Analyzes JARs for blueprint files so that any class references are added to the imports
    Eclipse Plugin
    Will add .project and .classpath files to newly created projects
    FileRepo Plugin
    Provides a bnd repository stored on the local file system
    Git Workspace Plugin
    Ensures that certain directories have a gitignore
    Gradle Workspace Plugin
    Provides the proper setup for a project when it is used in gradle
    Java Persistence Architecture Plugin
    Analyses JPA persistence.xml files and adds any discovered class to the imported packages.
    Local Index Repo
    A Plugin for locally indexed repositories
    Maven Bnd Repository Plugin
    A plugin to use and release to Maven repositories
    OBR Index Exporter Plugin
    Exports OBR Index XML from a specific Bndrun file
    OSGi Repository
    A plugin to use OSGi repositories
    P2 Exporter
    An exporter to export features from a bnd build
    P2 Repository
    A plugin to use P2 repositories
    Bnd Pom Repository
    A plugin to use a Maven POM as a repository
    Signer Plugin
    Provides the capability to sign files
    Spring Plugin
    Analyzes spring files and adds any discovered classes to the imported packages.
    URL Basic Authentication Plugin
    Provides basic authentication to the bnd's URL Connector handling
    URL bnd Authentication Plugin
    Provides bnd authentication to the bnd's URL Connector handling
    URL HTTPS Verification Plugin
    Verfifies that an HTTPS connection can be trusted
Search
    • Home