Eclipse: Upload eclipse settings automatically - eclipse

I often configure my eclipse with
customized perspectives
customized editor and other settings
etc.
Q1. Is there any feature by which this eclipse settings gets uploaded automatically to some cloud periodically so that I won't loose these settings in case I forgot to do this manually?
Q2. Is this requirement something desired by many developers and if so then how most developers deals with it?

There is such a service emerging at Eclipse:
https://wiki.eclipse.org/Eclipse_USS
And the Oomph technology in the upcoming Eclipse Neon release could use that service to store those preferences and re-create your preferences across installations and workspaces. This wiki contains a lot of additional information about Oomph:
https://wiki.eclipse.org/Eclipse_Installer
Hope this helps!!!

Related

Eclipse Oxygen - How can I download remote preference and overwrite local settings?

I think the documentation is confusing. I have my working environment preferences uploaded to eclipse.org, and now I want to download it to my home machine, with Eclipse Oxygen. How can I do that? "Synchronize now" seems to upload instead of download.
It is not currently possible to download remote preferences from eclipse.org to your local Eclipse installation. There is an open Eclipse bug on that very issue:
Bug 476019 - Support synchronization of local user preferences with a remote service
The bug is unresolved but its status is ASSIGNED, so hopefully that feature will be included in some future release of Oomph. It seems that there are legal and privacy issues associated with its implementation, apart from the purely technical aspect.
There is also code for the bug on GitHub, but it doesn't appear to have been touched for a couple of years.
(And I agree that the Oomph documentation is confusing.)

OSGi with Eclipse: How to hide eclipse Bundles?

Using Eclipse for OSGi Development is great.
Eclipse comes with cool auto completion features, thats also very helpful in OSGi.
By default Eclipse will suggest Bundles/Packages that are not created by myself but are available in Eclipse.
So my Question is how can i avoid that ? I just want to have my own bundles in these suggestions or auto completions. Is this possible ?
The set of visible bundles is controlled by the "target platform" that you define. By default, it points to self, so you see various bundles present in the Eclipse installation.
See Window -> Preferences -> Plug-in Development -> Target Platform

Eclipse sharing plugins between workspaces

I usually have a different workspace for each project that I work on (perl, java, PHP, etc.). Sometimes, I find a common new plugin (say EGIT) and install it , but it doesn't show up automatically in the other workspaces. Is there some setting in eclipse where I can enable this? I am using Indigo SR2.
Thanks!
P.S.: I know we have working sets within workspaces to help re-use the same workspace, but sometimes it is easier to manage projects when in separate workspaces.
If you are using the same Eclipse installation, each plug-in that you install will be available in all workspaces. You can see the list of installed plug-ins by selecting Help -> About Eclipse -> Installation Details
From Eclipse Indigo onwards, there is a way to import installations which makes it available across workspaces.
To go with rgerganov's answer:
For certain plugins, although they're installed and available to all workspaces for a given Eclipse installation, they may need to be individually configured within each workspace.
An example of this is the Checkstyle plugin where you need to specify the configuration to use, and enable it for each project within the workspace. This may also be the case for EGit.
For now, I had to use the trick mentioned in here of copying the relevant prefs files from one of the workspace directory to the new workspace directory followed by an eclipse restart to get the plugins enabled. Others feel free to edit if you see a better way.

How do you manage your Eclipse installation?

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.

choose a tool to create/maintain custom eclipse distrib

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.