Translation(s): none

Automatic and manual rebuilding of Java packages

You have updated a Java library and you want to test whether the update breaks existing reverse-dependencies? Here are a few tips.

The manual method

ubuntu-dev-tools (reverse-depends -b) and devscripts (build-rdeps) contain two useful tools to find reverse-build-dependencies. Usually reverse-depends -b will give you better results. Alternatively you can also use apt-cache rdepends <package> to find reverse-dependencies and to check if the listed build-dependencies are consistent with the dependencies of the package.

More useful tools: Schroot, to develop and test your packages in a confined environment. reprepro in combination with cowbuilder, pbuilder or sbuild.

First of all install your new build-dependency that should be tested. Download all source packages with apt source <package> and the required build-dependencies with apt build-dep <package>. Change to the package directory and rebuild the package with debuild -us -uc. Repeat the same steps for all reverse-dependencies.

With cowbuilder: sudo DIST=sid ARCH=amd64 cowbuilder --build <package>.dsc


DebOMatic is an automatic build machine for Debian source packages. Project Homepage with documentation


ratt, rebuild all the things!.

Mass rebuild with AWS or similar services

This is a more sophisticated approach for rebuilding a lot or even all Java packages.

Scripts and more documentation can be found at