User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
The osgi.instance.area is the workspace. If you are setting it on
the command line, then the workspace selection dialog has nothing to
do and will not open.
-Andrew
On 15-06-18 07:53 AM, Jay Jay Billings
wrote:
Thanks Daniel and Andrew.
We're running Kepler, but should have a Mars target
by the end of the week.
We are only setting the osgi.instance. area location
on the command line. Here's our product.
I think some of our plugins are getting loaded before
the workbench, yes. They are all set to start at the default
level, but I think our plugins are getting loaded before the
workbench application because they are OSGi services. Most of
them depend on the ResourcePlugin and I imagine that when the
framework stages the services it is triggering the configuration
of the ResourcePlugin. I tried changing the start level of our
bundles to be one greater than the default so that the would
start later, but that didn't fix it. I also tried to start the
workbench earlier at a lower start level, but that failed as
well.
The Eclipse runtime has
a few locations that can only be set once. The workspace
location (-data or osgi.instance.area) is one of them. Also
included in this set are the configuration location
(-configuration or osgi.configuration.area) is another, the
user location (-user or osgi.user.area), and the state
location. See
org.eclipse.core.internal.runtime.InternalPlatform for gory
details.
When a value is provided for one of these locations, it
cannot be changed. Setting the instance location can
prevent the ChooseWorkspaceDialog from opening -- if -data
(osgi.instance.area) has been set, then the dialog will not
open.
Further, some locations are linked. Setting a value for one
of them will cause a value to be set in the others (the
default value if one was not provided). For example, the
state location is usually within the workspace (the instance
location).
Are you setting any other areas (e.g., the state location)
from the command line? Are any of your customizations
running before the org.eclipse.ui.ide.workbench application
-- perhaps they are triggering a load of the state location?
Eclipse ICE (www.eclipse.org/ice)
uses a custom product to include our feature and some
other things in our binary. Our product actually uses
org.eclipse.platform.ide as the product it launches
and org.eclipse.ui.ide.workbench as the application.
ICE is currently configured to use a dedicated
workspace by passing the osgi.instance.area flag in
the VM args, but I am trying to change that so that
the workspace dialog will pop up at the beginning and
users can pick their workspace. Does anyone know what
I need to do for this to work? I've spent two days
looking at this and nothing I try will cause the
workspace dialog to pop up, except adding -data
@noDefault, which only messes up the ResourcePlugin
completely and prevents ICE from starting.
I'm not sure if this is the best place for this email,
but it seemed like a good start. I would greatly
appreciate your thoughts (even if they are just "Go
away!" ;-)).