Analyzing dependencies

The second step involves parsing all compiled Java classes (".class" files) and determining all dependent classes not provided inside the bundle. The external classes are reduced to a set of package names which are then noted as packages to be imported. The class parsing is done through Apache BCEL, a byte code engineering library.