Code / Download aQute - Software Consultancy
Search
*

Downloads

Please provide feedback about this code to mailto:Peter.Kriens@aqute.biz


Bnd tool

A tool that can be used as a command line utility, an ant task, an Eclipse plugin, and a maven plugin. It can be used to verify bundles, create bundles from the classpath and a description, as well as wrapping an existing bundle. See Bnd.

Not that the following release of bnd will become 0.1.0 and will require Java 5. I got soooo tired of the for loops and casting ...

Releases

Source code for bnd is available in the maven repository. The license for this source code is ASL 2.0.

Versions

200805040.0.257This is an intermediate version. I am making quite a few changes but some people need an update. Be careful not to use this in unaware production sites. I.e. do not update the maven plugin with this one!
200803310.0.249Added an editor, allowed includes to not override already set properties by prepending them with a ~
200803260.0.243Fixed path handling of absolute paths in Eclipse .classpath files. Absolute files were causing errors. Order of -include is reversed. Included files erroneously overwrite their properties on the level they were included. Now properties in the same file as the -include instruction always override the included properties. However, properties later in the list of included files overwrite properties in earlier files.
200803110.0.239Allow export of specifically mentioned metadata packages like META-INF. These are normally not exported but sometimes it is necessary. There is no wildcard expansion for these dirs.
200802120.0.238Added a -remove-attribute: directive on the Import clause to remove inherited mandatory attributes.
200801310.0.236Added a -nouses clause. Uses now only contains imported or exported packages but no private pacakges. Exports can override their uses, optionally including the calculated uses. Inlines (@x.jar) manifest headers were copied to the output manifest when the manifest was copied, the last one won. Inlines will now not copy the manifest
200712220.0.223Dependencies to 1.6 creeped into the code, now compiles against 1.4
200711300.0.218Versions as attributes lacked quotes. It turns out that the value of an attribute was only quoted when it contain a commo or a semicolon. It now verifies if it is already quoted or if it is not a token according to the spec. Note that in the next release it is likely that the . will be allowed in an attribute value.
200711290.0.215If a property had a \n and was copied to the manifest because it was a valid manifest header, and the \n was not followed by a space then the manifest would be corrupt. Now the jar will cleanup any attributes that have a newline
200710220.0.208Did not parse the Parameter Annotation Attributes, they turned to be slightly different than other annotation attributes.
200710050.0.201Crawls classes for come.acme.X.class like constructs. Fixes a parser bug that gave random problems for larger class files read from file (bnd reads from memory).
200709270.0.198Did not augment mandatory attributes when version was not set. Bundle Activator does not show warning when it comes form an import. Added -exportcontents header. Fixed double entries on classpath when using with Eclipse.
200708010.0.187Gives warning for wrap when rename fails. Implemented -removeheaders which remove headers from the output manifest
200708010.0.178Add the target attribute on the reference for a Service-Component. Fixed Conditional-Package to not give superfluous warnings for split packages, . Add the target attribute on the reference for a Service-Component. Fixed Conditional-Package to not give superfluous warnings for split packages
200707300.0.170Gives a proper error when a resource does not exists from Include-Resource. Adds a -split-package directive on Export-Package and Private-Package that defines a strategy when packages are split between different JARs
200706140.0.160Will not create jar when an existing jar is newer than any sources (make functionality) or itself. Sets exit code now on the number of errors (if -failok is not set). Added new ant tasks for preprocessing the bnd way and getting the .classpath values. Added new macros toclassname, toclasspath, and findname.
200705230.0.145Added an experimental feature: Conditional-Package, which will only include a package when it is required. This is a recursive definition
200705220.0.143-o can now also be a directory. Skips META-INF in export, cleans up versions if they are not OSGi compliant, corrected bug in -include when - was used and file was not found, added new error and warning macros
200704280.0.134Closing all streams
200704280.0.131Nasty bug in handling of ! in private/export
200704250.0.130mangled the import versions to follow OSGi rules
200704220.0.129Ouch, used getBoolean instead of parseBoolean in doing the serviceFactory attribute for a component
200704200.0.128-include supports properties like ${user.home} and when a file is prefixed with a - sign then its absence will not generate an error
200704190.0.125new servicecomponent did always create servicefactory
200704120.0.124bnd.jar did not run inside Eclipse because the plugin.xml contained a reference to a non existent preference page. Yes, I am working on better Eclipse support but it is not in any state yet
200704090.0.122Cleaned up non-osgi compatible versions when building
200704060.0.118Updated Service-Component handling. Now supports servicefactory, immediate, enabled, and factory attributes
200703120.0.115Supports <>, {}, (), [], «», and ‹› for macro names. Inside macros, the delimiters are counted so you can use embedded parentheses. You can now use the filename of a jar on the class path in Include-Resource instead of the path name, useful with maven.
200702150.0.112Uses name of bnd file when no Bundle-SymbolicName is set.

File Install Bundle

The File Install bundle watches a local directory. Files in this directory are bundles or configuration files. They are installed, updated, and uninstalled. This is probably the simplest management agent, but incredibly easy to use. See FileInstall.

License of the source code is EPL (or any other license you want).

Versions

200712071.3.4Log did not check for null exception so gave a NullPointerException when it tried to print a stack trace
200708131.3.2Changed configuration factory name to match the spec recommendation of using a symbolic name.
200706131.2.1Join in stop to prevent race condition, careful with bundle location setting to null
200705241.2Added configuration checking
200611131.0Initial release

---

clsd Class Dumper

Dumps a class file, see Clsd.

License of the source code is Apache Software License 2.0

download clsd.jar

Versions

200710051.0.0Initial version

Maven Bundle Deployer

Deploys bundles to maven repositories using FTP.

Source code for deploy is available in the maven repository. The license for this source code is ASL 2.0.

Versions

200611131.0Initial release

Sudoku

An example of how to separate an application between an OSGi part and a part that runs in the browser, using RPC to communicate. See Sudoku.

Copyright 2006 aQute SARL, All Rights Reserved