JH_GENERATEORBITDIR(1) Javahelper JH_GENERATEORBITDIR(1)NAME
jh_generateorbitdir - Creates and populates an orbit dir used by pde-build for third-party jar files.
SYNOPSIS
jh_generateorbitdir [debhelperoptions] [--orbit-dir=dir] [orbit-dep[...]]
DESCRIPTION
jh_generateorbitdir is a javahelper program that handles creation of an orbit dependency dir. This directory has to be populated with non-
eclipse jar files. However, eclipse refers to these jars by their "symbolic name". jh_generateorbitdir can extract this name from the jar's
manifest (provided it has the OSGi metadata) and create a symlink to it.
jh_generateorbitdir will replace regular files with symlinks if they are present in the orbit dir and clash with the name of one of the
orbit jars. If an orbit jar name clashes with a symlink in the orbit dir, then jh_generateorbitdir will assume that the given jar has
already been symlinked correctly. In this case the jar file is still recorded in the cache (see below).
jh_generateorbitdir will also check the default installation for jar files on Debian systems (at the time of writing /usr/share/java), if
it cannot find the jar in the current dir.
Jar files replaced by jh_generateorbitdir will be recorded so that jh_installeclipse can replace with symlinks them post install.
FILES
debian/eclipse.orbitdeps
List of orbit dependencies - one per line. This can be used as an alternative to passing it per command line.
OPTIONS --orbit-dir=dir
Specifies the directory from where the orbit-dir is or should be created. Defauls to "debian/.eclipse_build/orbitdeps".
EXAMPLE
jh_generateorbitdir --orbit-dir orbit asm3 oro
Will generate a folder called orbit with two symlinks based on asm3 and oro's symbolic name.
SEE ALSO debhelper(7)
This program is a part of javahelper and uses debhelper as backend. There are also tutorials in /usr/share/doc/javahelper.
AUTHOR
Niels Thykier <niels@thykier.net>
COPYRIGHT AND LICENSE
Copyright 2010 by Niels Thykier
This tool is free software; you may redistribute it and/or modify it under the terms of GNU GPL 2.
0.43 2011-04-29 JH_GENERATEORBITDIR(1)
Check Out this Related Man Page
Debian::Javahelper::Eclipse(3) Javahelper Debian::Javahelper::Eclipse(3)NAME
Debian::Javahelper::Eclipse - Eclipse Helper Library.
SYNOPSIS
use Debian::Javahelper::Eclipse;
my @orbitdeps = ();
push(@orbitdeps, {
EOB_SYM_NAME => 'org.apache.commons.net',
EOB_SYS_JAR => '/usr/share/java/commons-net2.jar'});
#...
# Install the feature to "$dropins/$name"
install_zipped_feature($zip, "$dropins/$name");
# and symlink the following orbitdeps.
install_zipped_feature($zip, "$dropins/$name", @orbitdeps);
DESCRIPTION
This module is used by the eclipse related javahelpers to share common code.
Please note this API is not stable and backwards compatibility is not guaranteed at the current time. Please contact the maintainers if you
are interested in a stable API.
Definitions
A bundle refers to a jar file. An orbit dependency (a.k.a orbitdep) is a bundle, which is used by eclipse or one of its features without
being a part of eclipse or said feature.
This module keeps track of bundles via hashes; see the EOB_* constants for relevant keys (and their expected values).
Constants
EOB_SYM_NAME
Key for hashes to fetch the symbolic name of a bundle.
EOB_BUNDLE_VERSION
Key for hashes to fetch the version of a bundle.
EOB_SYS_JAR
Key for hashes to fetch the path to the system installed jar file.
Only valid for an orbit dependency and cannot be used with manifests.
Methods
install_zipped_feature($fzip, $loc[, $orbitdeps[, $package, $needs]])
Unpacks the zipped feature $fzip into $loc, which should be a subfolder of a dropins folder (e.g. /usr/share/eclipse/dropins/emf). This
can also be used to install the feature into a "build environment". In this case it should be installed into the same folder as the SDK
is (this folder is usually called "SDK").
If $orbitdeps is present, it should be an ARRAY ref containing orbit dependencies, which will be symlinked after unpacking. This sub
only needs the EOB_SYM_NAME and EOB_SYS_JAR to be set and valid. Orbit dependencies not present in the installed folder will be
ignored, so it is safe to have unrelated orbit dependencies in the ARRAY ref.
If $package and $needs are present, the former should be the name of a debian package and the latter a hashref. The sub will populate
the $needs hashref with which orbit dependencies are used by the package. The $needs hashref can be re-used in multiple calls to this
sub.
Keys in $needs will be the path to the orbit jar's real location (EOB_SYS_JAR) and the value a new hashref. This hashref has as keys
the names of packages and as values 1. The $needs is used by jh_installeclipse to populate the ${orbit:Depends} variables for packages.
AUTHOR
Niels Thykier <niels@thykier.net>
COPYRIGHT AND LICENSE
Copyright 2010 by Niels Thykier
This module is free software; you may redistribute it and/or modify it under the terms of GNU GPL 2.
0.43 2011-02-17 Debian::Javahelper::Eclipse(3)