I would like to settle on a tool to create/maintain my custom eclipse distrib (starting with next 3.6). By studying previous questions main contenders seem:
Pulse
Yoxos
Google Workspace Mechanic: recently announced
doing it yourself in eclipse
Has anyone experiences in several of them and can comment on advantages etc?? My wishes are:
by 'distrib' I mean: plugins, settings & preferences...
be able to use the same eclipse setup in several workstations
MAYBE sharing with other members of the team
works across 3.5 and next 3.6: I don't know if it's possible. And anyway I would not object to customize the distrib once per new eclipse major release
Basically I was looking for the similar plugin or product. Pulse and Yoxos both supports plugin sync and workspace preference sync which is what i was mostly expecting.
Pulse
Pros
Pulse Explorer let you create new profile easily and share it
Eclipse installation folder is configurable and can be used as standalone installation for each profile
Cons
I felt sharing workspace preferences is complicated
Plugins repo search is slow
Replaced default update / install menus with Yoxos update
Very very buggy
Yoxos
Pros
I felt importing workspace preferences and save it to your online profile is easy
Search the plugins from public repositories is cool and very easy
Single eclipse installation is shared between all profiles
Cons
Yoxos Customizer is very complex (at least in my experience)
Custom added repositories are not
synced with server
Workspace Mechanic
Its very cool, more flexible plugin, but will sync only workspace preferences across eclipse installations
Personally I'm settled with Yoxos now.
Also refer
http://www.poweredbypulse.com/forums/showthread.php?t=29
Same plugins: I would just create update site with my plugins, or composite update site pointing to update sites with plugins you're interested in. Or you can simply use Eclipse Marketplace, which can create such update site for you from plugins you mark as favorite. Yoxos and Pulse should also work fine.
Same settings / preferences: Workspace Mechanic from Google may do the job for you. Beware: it is new project, which was just released into public. Disclaimer: I have no real experience with it :-) Pulse Team Edition should also be able to help (see previous disclaimer though).
I was in search for something like that myself (but more driven by the shared team approach), and I highly recommend the new Yoxos 5 Beta. It features synchronization of plugins and settings, while all your other suggestions only synchronize either plugins or settings, if I remember correctly.
In addition to your list, it might also be interesting to have your own mirrored update site, so its easier to control which version of which plugin can be installed at all (that also being more important in a corporate environment). See Eclipse help for details on how to create that mirrored site.
I think Sonatype Maven Studio leverages Maven to include Eclipse provisioning.
Related
I want to find a way to quickly install eclipse with the same plugins and settings on several different Windows 7 computers. How could I go about doing this?
There are no easy solutions, but the process itself is clearly automateable. One solution would be the use of the p2 director application. You have to download a single director installation - one is available from the Buckminster download page, but from any Eclipse installation you can access this director application and use it to download all required software.
An alternative is the Oomph project, where you can define a model that describes what features do you want to install (among other things, such as default properties, source code to checkout), and it manages the download and installation automatically; and can also update the installation as well. One of my collegues like Oomph very much, but to tell the truth, my personal experience was that it was a bit raw (a few month ago).
Bootstrapping Eclipse on new machines is such a time consuming process, you wind up asking yourself whether you really need each plugin. But there all handy, and help develop consistent habits.
Eclipse bootstrapping problems include:
Explaining / documenting what needs to happen
The actual time pasting in the right URLs and downloading
Version compatibility and dependencies
Eclipse likes to restart after each one
The changeover to the Eclipse Marketplace means that some plugins and instructions you find on the web tend to be inconsistent, depending on when they were written.
The Licenses... over and over and over... yes, yes, yes... I understand that the person installing needs to be aware of it, and have a chance to review them, but there's got to be a better way.
It'd be nice to have "patch file" (either binary or meta) that spells out what I want to add on top of stock Eclipse installation. I'd really like to find (or create) a 1 or 2 step process that sets up Eclipse, plus a favorite batch of plugins:
subclipse
m2eclipse
jetty support like runjettyrun
android sdk and plugin (or at least just the plugin)
aspectj
Web Objects / WOLiops
python, other langs
JVM Monitor, maybe EclEmma
probably a git plugin pretty soon.
Does command line maven help with any of this? It seems like its repository management would fit at least part of the functionality.
On a machine with an Eclipse installation matching your needs use File -> Export -> Install -> Installed software items to file. Import the generated file using the same menu on all other machines.
As Scott says, a good approach is to simply package a fully prepared Eclipse installation once all the plugins you need are installed. The downside is that you have to update most plugins afterwards.
Another option is to use Yoxos. With it, you can create a profile and configure it with all the plugins you need (and apparently Yoxos can do more than that).
Finally, this page might interest you concerning the configuration side of things.
Solution 1 is too search for more advanced Eclipse distributions.
For example, STS (Spring Tool Suite) comes with
AspectJ
EGit
m2e
(and of course) Spring IDE
One small trick can be done with m2e-android - Android Configurator for M2E Maven Integration. If installing it on clean Eclipse, it will also automatically resolve to install :
m2e
Android Developer Tools (ADT)
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.
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.
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.
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.
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.
We use Eclipse as the IDE for developing all sorts of Java/J2EE applications in our 150 people odd IT department. One of the common problems we have been seeing is that developers download and install different versions of Eclipse and plugins based on their personal likes and dislikes.
We have been trying to bring some consistency to this and have standardized on the version and the plugins that developers should be using. So the problem now is how do we distribute this installation to the team. We have zipped the directories and shared it through a shared drive. But I am looking for a better solution using some kind of provisioning tool for Eclipse using which people can install the IDE or get updates.
Has anyone faced this problem? What are your solutions to this? How do you ensure a standard Eclipse environment across developers?
I found Yoxos as a potential solution to this. Does anyone have any experience with it? Can p2 be used to do this?
You can create your own composite p2 repository and use p2 installer to bootstrap Eclipse from there. Alternatively you could use one of the commercial tools, such as Yoxos, Pulse or Nexus.
Our solution is currently a non-freware one, based on Nexus Pro.
Since it supports p2 repositories as well as well as the ability to combine multiple Eclipse update sites into a single URL, we are using that last feature to propose one URL per project, each one referencing the right set of plugins for each project.
alt text http://img714.imageshack.us/img714/9762/mavenp2.png
I've just set up my machine from scratch and was wondering if there are any open available ready to use Eclipse versions (3.5 preferred) which have already installed famous (most used) plugins like subversion support, maven, pmd, checkstyle, findbugs etc. This would save me time setting it up myself.
thx,
kuku
Never really tried it myself, but this may ease it up for you: yoxos
And then there's myeclipseide but I think you pay for it.
For making sure everyone on our team works with the same set of plugins, we are using the notion of "group of plugins" in a Nexus Pro (so non-free) repository
Nexus Professional has support for Eclipse P2 repositories, and it can serve Eclipse plugin artifacts to tools that know how to interact with the Eclipse P2 repository format including Eclipse 3.4 Ganymede.
If you use the Eclipse IDE, you probably have a set of plugins which every single developer needs to install to get productive.
Using Nexus Professional, you can combine multiple Eclipse update sites into a single URL which your developers can use when they are configuring a development environment.
Using Nexus Professional as a single point-of-access between your developers and the Eclipse update sites they depend on allows you to manage and define a set of common Eclipse plugins in your organization's Eclipse development environment.