ServiceName serviceName = depUnit.getServiceName().append("Activate");
BundleActivateService service = new BundleActivateService(depUnit);
ServiceBuilder<XBundle> builder = serviceTarget.addService(serviceName, service);
builder.addDependency(resolvedBundle, XBundle.class, service.injectedBundle);
// Add a dependency on the BundleActivator component
OSGiMetaData metadata = depUnit.getAttachment(OSGiConstants.OSGI_METADATA_KEY);
if (metadata != null && metadata.getBundleActivator() != null) {
String activatorClass = metadata.getBundleActivator();
EEModuleDescription moduleDescription = depUnit.getAttachment(EE_MODULE_DESCRIPTION);
for (ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) {
if (activatorClass.equals(componentDescription.getComponentClassName())) {
ServiceName startServiceName = componentDescription.getStartServiceName();
builder.addDependency(startServiceName, Component.class, service.injectedComponent);