CodeSource cs = EclipseStarter.class.getProtectionDomain().getCodeSource(); if (cs != null) { URL url = cs.getLocation(); if (System.getProperty(PROP_FRAMEWORK) == null) System.getProperties().put(PROP_FRAMEWORK, decode(url.toExternalForm()));  if (System.getProperty(PROP_INSTALL_AREA) == null) { String filePart = decode(url.getFile()); System.getProperties().put(PROP_INSTALL_AREA, filePart.substring(0, filePart.lastIndexOf('/'))); } }
	public static void main(String[] args) throws Exception {		if (System.getProperty("eclipse.startTime") == null) //$NON-NLS-1$			System.getProperties().put("eclipse.startTime", Long.toString(System.currentTimeMillis())); //$NON-NLS-1$        CodeSource cs = EclipseStarter.class.getProtectionDomain().getCodeSource();		if (cs != null) {			URL url = cs.getLocation();			if (System.getProperty(PROP_FRAMEWORK) == null)				System.getProperties().put(PROP_FRAMEWORK, decode(url.toExternalForm()));			// allow prop to be preset			if (System.getProperty(PROP_INSTALL_AREA) == null) {				String filePart = decode(url.getFile());				System.getProperties().put(PROP_INSTALL_AREA, filePart.substring(0, filePart.lastIndexOf('/')));			}					}		if (System.getProperty(PROP_NOSHUTDOWN) == null)			System.getProperties().put(PROP_NOSHUTDOWN, "true"); //$NON-NLS-1$		run(args, null);	}