18

How do you manage your Eclipse installation, i.e. the basic installation, plug-ins and workspace settings with regard to consistent updates (including major ones, 3.5 => 3.6) and usage on two or more computers (desktop + notebook).

My current setup is to basically managing the installation on several installations in parallel, i.e. manually add new plug-ins I installed on one to the other, and when I haven't used one in a long time to copy the whole directory from one location to the other. For updates I usually run it about once a month to get the latest versions, major updates I do manually by downloading the basic distribution and re-installing all the plug-ins in the matching version for the new major Eclipse version.

However, this approach has some drawbacks:

  • time intensive
  • update inconsistencies (Update sites change location, update doesn't work because of some version inconsistency between plug-ins that requires a lot of manual fixing, etc) (this has gotten better with 3.5 but still bugs me)
  • no "global" update site, I manually have to manage several locations

I tried alternatives like Yoxos for configuration management but there plug-ins were missing and / or not that well tested together as I expected.

I took a look at Idea as an IDE, the one thing I really loved was the update management: centralized and 90% of the functionality I'd be using are provided as a core that is tested and updated as one.

Thus the question: How do you manage your Eclipse installations and deal with updates?

From my experience with other Eclipse users they have at least the same problem with updates, but I haven't heard of a solution yet.

peterh
  • 11,875
  • 18
  • 85
  • 108
Elmar Weber
  • 2,683
  • 28
  • 28

4 Answers4

10

I've heard good things from other developers about Google's Workspace Mechanic.

That's what they use inside Google to manage Eclipse environments across teams.

It was open sourced in May 2010, and you may find more information in the blog post.

Note that the Workspace Mechanic does not yet manage plug-in installations (see discussion thread): it remembers "plugin preferences", but installing the plug-in themselves is not yet supported.

Etienne Neveu
  • 12,604
  • 9
  • 36
  • 59
  • Definitely a project to keep an eye on, but if I see correctly, now its too alpha and the tools for an easy setup are missing. – Elmar Weber Sep 27 '10 at 22:42
  • I asked the committer of Mechanic, he said the eclipse and additional plug-ins of google projects are deployed by administrator as a central management. Everyone shares the installation, so Mechanic is a tool to keep the consistence of workspace and preferences among team members. – Kane Sep 28 '10 at 03:08
3

I also met such inconvenience. I always need install similar development tools(such as Mylyn, SVN, CDT, Clearcase) in different eclipse instances on different hosts(Windows, Linux).

Update:

Eclipse has officially offered a feature to help migrating what you have installed since Eclipse Indigo.

And it also supports install existing plug-ins from another instance.

bakoyaro
  • 2,550
  • 3
  • 36
  • 63
Kane
  • 8,035
  • 7
  • 46
  • 75
  • Thanks for the hint, I also somehow missed the Eclipse marketplace as a new somewhat central repository. I'll give both a try. – Elmar Weber Sep 27 '10 at 22:37
  • I see that your tool is now included in Indigo (congrats), but I must admit I still don't see how to use it. How do I export/import in indigo/juno? The description "just export/import the p2 installation to/from file like preference" doesn't really make sense to me. Thanks. – studgeek Sep 12 '12 at 22:03
1

My strategy is as follows:

When a new Eclipse version comes out, I install it fresh and set up a fresh workspace. Then, I install all the minimal plugins I need manually, such as Subversion and M2Eclipse. Also, I export the preferences (e.g. code formatting) to an external file and reimport it in the new Eclipse installation.

I always import existing projects into the workspace. I can use my workspaces (or better, my SVN working copy) from multiple Eclipse versions if necessary.

I only occassionally install additional Eclipse plugins and try to move all other toolchain parts into the build environment (e.g. Hudson with several slaves, automated builds and release scripts, Sonar for code-quality reports etc.)

I try to minimize the complexity of the development setup on my local developer machine.

mhaller
  • 14,122
  • 1
  • 42
  • 61
  • I used to do this as well, but the problem is that the plug-in eco system I use is grown rather large and when I take a serious look at whether I really need every plug-in, it comes always down to yes. Even if I use it just every other month (e.g. a TCP proxy) its nice to have just a few shortcuts away. – Elmar Weber Sep 27 '10 at 22:34
1

I only have one installations but I have multiple workspaces.

I synchronize the workspace setting by copying the content of <workspace_dir>/.metadata/.plugins/org.eclipse.core.runtime/.settings directory.

I also use the bookmarks to centralized to save the update-sites relevant for my work. This can act as a global update site. To import/export some bookmarks, go in Preferences -> Install/Update -> Available software sites. When a new Eclipse version comes out (once a year), I only have to install the plugins using the bookmarks.

gawi
  • 13,940
  • 7
  • 42
  • 78