Skip to content
bnd, the swiss army knife for OSGi. A tool to build bundles.
Java Groovy Other
Latest commit 6f7ff95 @bjhargrave bjhargrave Merge pull request #1319 from bjhargrave/m2e-incremental
bnd-maven-plugin: Avoid writing output if not out-of-date
Failed to load latest commit information.
.gradle-wrapper build: Update gradlew to 2.11
aQute.libg javadoc: Clean up the many warnings in the build
biz.aQute.bnd.annotation javadoc: Clean up the many warnings in the build
biz.aQute.bnd.embedded-repo javadoc: Clean up the many warnings in the build
biz.aQute.bnd.exporters javadoc: Clean up the many warnings in the build
biz.aQute.bnd.gradle.tests javadoc: Clean up the many warnings in the build
biz.aQute.bnd.gradle javadoc: Clean up the many warnings in the build
biz.aQute.bnd.test javadoc: Clean up the many warnings in the build
biz.aQute.bnd.testextension javadoc: Clean up the many warnings in the build
biz.aQute.bnd javadoc: Clean up the many warnings in the build
biz.aQute.bndlib.tests javadoc: Clean up the many warnings in the build
biz.aQute.bndlib analyzer: clean up jar-from-file methods
biz.aQute.configadmin javadoc: Clean up the many warnings in the build
biz.aQute.demo.subsys javadoc: Clean up the many warnings in the build
biz.aQute.jpm javadoc: Clean up the many warnings in the build
biz.aQute.junit javadoc: Clean up the many warnings in the build
biz.aQute.launcher javadoc: Clean up the many warnings in the build
biz.aQute.remote javadoc: Clean up the many warnings in the build
biz.aQute.repository.aether javadoc: Clean up the many warnings in the build
biz.aQute.repository javadoc: Clean up the many warnings in the build
biz.aQute.resolve javadoc: Clean up the many warnings in the build
biz.aQute.tester javadoc: Clean up the many warnings in the build
cnf javadoc: Clean up the many warnings in the build
demo javadoc: Clean up the many warnings in the build
dist javadoc: Clean up the many warnings in the build
maven bnd-maven-plugin: Avoid writing output if not out-of-date
org.osgi.impl.bundle.repoindex.ant javadoc: Clean up the many warnings in the build
org.osgi.impl.bundle.repoindex.api javadoc: Clean up the many warnings in the build
org.osgi.impl.bundle.repoindex.cli javadoc: Clean up the many warnings in the build
org.osgi.impl.bundle.repoindex.lib javadoc: Clean up the many warnings in the build
org.osgi.impl.bundle.repoindex.test javadoc: Clean up the many warnings in the build
.gitattributes gitattributes: Add .bndrun files
.gitignore gitignore: Tidy up root .gitignore
.mailmap .mailmap: Add name for Ray
.travis.yml ci build: Add git command to describe the state after build
CONTRIBUTING.md gradle: Add first test cases for gradle plugin
LICENSE license: Add a LICENSE file for Apache License 2.0
README.md readme: Update Java target of launcher and junit
REPOINDEX.md repoindex: Add readme file from old bindex repo
appveyor.yml ci build: Add git command to describe the state after build
build.gradle build: make test resource folders input to the test task
gradle.properties build: Increase memory settings
gradlew build: Update gradlew to Gradle 2.8
gradlew.bat build: Update gradlew to 2.11
rebuild-with-local-plugin build: Add script to rebuild with the just built gradle plugin
settings.gradle build: Simplify support for relative file urls to the bnd gradle plugin

README.md

README bnd

bnd is a swiss army knife for OSGi, it creates manifest headers for you based on analyzing the class code, it verifies your settings, it manages project dependencies, gives you quote of the day, diffs jars, and much more.

The information about bnd can be found at http://bnd.bndtools.org

Repository

The git repository contains all code. It contains the following projects:

  • aQute.libg - Library to be statically linked (Conditional-Package)
  • biz.aQute.bnd - A command line utility and ant plugin
  • biz.aQute.bndlib - The core library
  • biz.aQute.bndlib.tests - Tests for the core library
  • biz.aQute.jpm - Just another package manager for Java
  • biz.aQute.junit - Junit tester (runs on Java 1.5)
  • biz.aQute.launcher - Launcher (runs on Java 1.6)
  • biz.aQute.repository - Different repos with OBR
  • biz.aQute.resolve - OBR Resolver
  • cnf - Configuration directory
  • demo - Used in testing
  • dist - Contains the distribution after 'gradle'

License

All code is Apache 2.0 Licensed so you can do what you want with the source code.

API

Though I am usually pretty good at backward compatibility, there is no guarantee. This is an unpaid project and one of the most annoying thing of work is being backward compatible on the Java API when you know a better way to do it. Properties will be backward compatible if there is any possibility. So be aware, its ok to use this package but do not complain if new releases require some work.

If you're building a tool with a general audience, e.g. bndtools, that includes bnd for a general audience I would appreciate if you got in touch with me so I can keep in touch. I am always interested in ideas.

Eclipse

bndtools is the development environment of bnd. An earlier Eclipse plugin in bnd is no longer available.

Building

Gradle is used to build bnd. The workspace root has a build.gradle file that builds all projects in proper order.

./gradlew - Assembles, tests and releases the projects into dist/bundles
./gradlew :dist:build - Assembles and tests the projects
./gradlew :dist:index - Assembles and releases the projects into dist/bundles

The workspace root includes the gradle wrapper, gradlew, command.

CloudBees Build Status Travis CI Build Status

Release

bnd is continuously built and released on CloudBees.

Built on DEV@cloud

Feedback

Feedback is always welcome, for general discussions use the bndtools-users@googlegroups.com list. We also have the bndtools-dev@googlegroups.com list for discussions on the development of bnd.

Bugs and issues should go to https://github.com/bndtools/bnd/issues

Other feedback or specific functionality send to Peter.Kriens@aQute.biz

Contributing

Want to hack on bnd? There are instructions to get you started.

They are probably not perfect, please let us know if anything feels wrong or incomplete.

Something went wrong with that request. Please try again.