optionally running java compiler in a forked process
Replace source tab to dialog
RootIndex: store LowMemoryWatcher in a field instead of registering via Disposer to avoid leaking of all RootIndex instances created for a project