如何强制 Eclipse 请求默认工作区?

我注意到,在安装 cdt 之后,Eclipse 总是加载默认的工作区。osgi.instance.area.default中的 config.ini中列出的工作区。无论 Prompt for workspace on startup是否设置,Eclipse 都不会询问要打开哪个工作区。

如何强制 Eclipse 询问在启动时加载哪个工作区?

106378 次浏览

It works for me if I tick the box Prompt for workspace on startup, which you can find in Window → Preferences → General → Startup and Shutdown → Workspaces.

Go to Window → Preferences → General → Startup and Shutdown → Workspaces (or Eclipse → Preferences → ... on macOS)

Check the checkbox Prompt for workspace on startup

Then at startup Eclipse will ask for workspace selection.

I can confirm that I am having the same issue. I am also using Eclipse classic with CDT. The funny thing is that it only started happening earlier this evening. Before then, I was always prompted for the workspace. Checking Prompt for workspace on startup has no effect. I am not launching eclipse using a startup script, so the -data flag is not set on launch. I have removed the line osgi.instance.area.default from the configuration/config.ini file, but that had no effect.

A few strange quirks that are incidental to this problem: If I delete the workspace workspace it creates it again upon launch. However, when I switch to one of my "real" workspaces I notice that the workspace workspace is not listed as an option to be switched to.

As would be expected, reinstalling Eclipse resolves the issue. But it would be nicer to find a way to fix the problem without resorting to that.

I had the same problem with indigo on linux 3.0 X86_64: After runnning eclipse -clean everything went back to normal.

Thanks to some comment on the eclipse issue: https://bugs.eclipse.org/bugs/show_bug.cgi?id=134412

The “Prompt for workspace at startup” checkbox did not working. You can setting default workspace, Look for the folder named “configuration” in the Eclipse installation directory, and open up the “config.ini” file. You’ll edit the "osgi.instance.area.default" to supply your desired default workspace.

Inside the configuration/.settings folder of your Eclipse installation, there is a file called org.eclipse.ui.ide.prefs. Open this file in a text editor and change the property SHOW_WORKSPACE_SELECTION_DIALOG from false to true.

Tested with Eclipse 3.7 on Windows.

I had the same problem on my Eclipse, and calling eclipse -clean did not solve the problem.

In the end I figured out that within the installation folder of Eclipse there is a script called eclipse. This script does some setting of environment variables and then calls eclipse.bin. The call for eclipse.bin contained the this command-line switch:

-data ~/.eclipse

When I removed that switch from start-up script, I got the workspace selection as expected.

Version: Eclipse CIndigo Service Release 2

  1. File > Switch Workspace > Other...
  2. In the textbox, write the path in the Workspace or Browse

It automatically sets the default Workspace during exit.

Under Aptana 3.2.2, in \configuration\.settings\org.eclipse.ui.ide.prefs, edit:

RECENT_WORKSPACES=I\:\\PDT\\workspace

It will check the recent workspace, so just set it to what you want. I do it for running off an external drive.

Using Eclipse Indigo this is how I did it:

Window → Preferences → Startup and Shutdown → Workspaces

Check the box at the top of the window that says "Prompt for workspace on startup"

I followed the thread and tired all things but didn't work. Finally I saw that my eclipse shortcut target is like below

C:\Eclipse_3.6\eclipse\eclipse.exe -clean -data "C:\workplace" ...

I simply removed -data option and it worked. Now I got popup to choose workspace at startup.

cheers.

Starting eclipse with eclipse -clean did wonders for me.

I had the same issue (in Eclipse Juno), but I just wanted to change the default workspace to the one I'm using

There's a setting in ECLIPSE_DIRECTORY/configuration/config.ini that is causing a specific workspace to be loaded without prompting for a workspace. If you just want to change the default workspace, you can just modify the value or add it if it doesn't exist:

osgi.instance.area.default=@user.home/some_workspace

or

osgi.instance.area.default=/some/absolute/path/some_workspace

Editing the config.ini file with

osgi.instance.area.default=\D:\\Projects\\Eclipse Workspace\\

worked for me.

I first tried the -clean option, but that didn't solve the problem. Then I added the -data option with the correct path to the workspace, which worked.

I resolved the problem by adding the -showLocation flag to eclipse.ini.

Sometimes you need to pay attention to howw Eclipse is launched. I ever pinned Eclipse by rigk-click on the excutable and pinning it to taskbar. In this way, the Eclipse is launched to use settings under c:\User\public\public Documents\eclipse" which is not very desirable.

However, if you pin it by creating a short-cut, then it will launch to use settings in the folder of Eclipse installation. Then everything makes much more sense.

If your Eclipse is auto-closing at startup you can

  • Open the properties of your shortcut and add -clean at the end of the path,
  • Or, in a command prompt, run C:\PATH_TO_YOUR_ECLIPSE\eclipse -clean like mentioned in the comments and other answers

I'd recommend you to create a shortcut to eclipse.exe with the -data command line option. This way you can create a separate shortcut to each workspace you use, and avoid unnecessary dialogs and mouse clicks.

Windows: Just create an Eclipse shortcut on your desktop, then right-click to open Properties and under Shortcut set something like this as Target: C:\eclipse\eclipse.exe -data C:\Path\to\your\workspace1. This will launch Eclipse and automatically open workspace1.

Repeat the steps for all the workspaces you use often.