if (bundles[i].getState() == Bundle.INSTALLED) throw new IllegalStateException(NLS.bind(EclipseAdaptorMsg.ECLIPSE_STARTUP_ERROR_BUNDLE_NOT_RESOLVED, bundles[i].getLocation()));
if (bundles[i].getState() == Bundle.INSTALLED) {  log.log(new FrameworkLogEntry(FrameworkAdaptor.FRAMEWORK_SYMBOLICNAME, FrameworkLogEntry.ERROR, 0, NLS.bind(EclipseAdaptorMsg.ECLIPSE_STARTUP_ERROR_BUNDLE_NOT_RESOLVED, bundles[i].getLocation()), 0, null, null)); continue; }
	private static void ensureBundlesActive(Bundle[] bundles) {		ServiceTracker tracker = null;		try {			for (int i = 0; i < bundles.length; i++) {				if (bundles[i].getState() != Bundle.ACTIVE) {					if (bundles[i].getState() == Bundle.INSTALLED)						throw new IllegalStateException(NLS.bind(EclipseAdaptorMsg.ECLIPSE_STARTUP_ERROR_BUNDLE_NOT_RESOLVED, bundles[i].getLocation()));					// check that the startlevel allows the bundle to be active (111550)					if (tracker == null) {						tracker = new ServiceTracker(context, StartLevel.class.getName(), null);						tracker.open();					}					StartLevel sl = (StartLevel) tracker.getService();					if (sl != null && (sl.getBundleStartLevel(bundles[i]) <= sl.getStartLevel())) {						String message = NLS.bind(EclipseAdaptorMsg.ECLIPSE_STARTUP_ERROR_BUNDLE_NOT_ACTIVE, bundles[i]);						throw new IllegalStateException(message);					}				}			}		} finally {			if (tracker != null)				tracker.close();		}	}