forked from bndtools/bnd
-
Notifications
You must be signed in to change notification settings - Fork 0
bnd, the swiss army knife for OSGi. A tool to build bundles.
tangyong/bnd
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
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://www.aQute.biz/Bnd Repository The git repository contains all code. It contains the following projects: 1) bndlib - Core library function, also contains most tests 2) bnd - Command line tool, eclipse plugin, and ant plugin 3) launcher - A launcher plugin for bnd 4) libg - Small, simple library utilities that are useful outside bnd 5) junit - A tester plugin for JUnit 3.8 testing for bnd 6) cnf - The bnd project directory, contains the repo with dependencies 7) demo - A project used in testing 8) compiler - A wrapped version of the eclipse java compiler API All code is Apache 2.0 Licensed so you can do what you want with the source code. 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 bnd is build with itself, which can create some headaches. Overall, you want to your work therefore in Eclipse with a recent bnd.jar in the Eclipse dropins folder. Currently, bndtools is not yet ready for bnd itself :-( however, that is being worked on. Once bndtools handles the bnd launcher/tester then the eclipse plugin will be removed. Until that moment, we need to use the old code in Eclipse. It is advised to not mix bnd and bndtools but use different instances of Eclipse. Building The workspace root has a build.xml that builds all project in proper order. Due to the fact that bnd builds itself there are certain cases where you get an error during build. Trying again should fix the issue. Each project directory has a build.xml. The following targets are available: ant build (default) - Build ant clean - Clean the project ant test - Run a bnd OSGi test ant junit - Run standard JUnit tests in the test package Outputs are stored in the tmp directory in the different projects. Testing The main tests are in the bndlib project. These are standard JUnit tests. They are all in the src/test directory. Tests are quite extensive and run from the Eclipse JUnit screen. Release The current release process could use some work. The following steps are used: 1) Changes to the tree are made on the next branch 2) After the next branch is done, commit all changes. There are a few files changed by tests that should not be committed every time: # biz.aQute.bndlib/test/ws/p1/bnd.bnd # biz.aQute.bndlib/test/ws/p1/bnd.bnd.bak # biz.aQute.bndlib/test/ws/p3/generated/p3.jar This needs fixing btw. The test should not touch those files or at least restore 3) Switch to master 4) ant clean build 5) run the tests 6) if successful, release the jars 7) bump the version (bnd bump command does this) 8) switch to next branch This process is likely to change because it contains too many manual steps Feedback Feedback is always welcome, for general discussions use bndtools-users@googlegroups.com Bugs and issues should go to https://github.com/bndtools/bnd Other feedback or specific functionality send to Peter.Kriens@aQute.biz Donations should go to http://pledgie.com/campaigns/10548
About
bnd, the swiss army knife for OSGi. A tool to build bundles.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- Java 100.0%