How to make your own eclipse? - eclipse

Who knows how to customize your own eclipse? I want to include some plugins and use it as bundled solution and not to install additional plugin when I want to use it on other machine.

This is what I've done in the past.
The first thing you have to do is a fresh install of eclipse, all the plugins you intend to use, and their configurations. After that just copy the eclipse folder AND the workspace/.metadata folder (this one could be an hidden folder) to the new machine.
Copying those folders to a new machine and running eclipse with the -clean flag (only needed the first time) seems to work fine so far.
I ran into some problems when trying to use 32bit eclipse in an 64bit environment, but I guess it's normal that it doesn't work. Also, this is not a cross-platform solution, i.e you cannot use your Mac installation of eclipse in Windows, or vice-versa.

I think you are referring to so called Individual Source Bundle, which you can build and create your own setup that will install your custom Eclipse bundle on desired machine.
Another solution would be just creating simple install/archive that will unpack c:\eclipse\ to c:\eclipse\ (or whatever) on target machine. This will work since Eclipse is not hardware dependent (but sure, it is OS dependent) because it's Java based.

Related

Custom Eclipse packages

I would like to make an offline Eclipse installation with JDT, CDT and a few other plugins. This is what I would like to do, in decreasing preference:
Create an installation package similar to the ones available for download on the Eclipse website. Question: How can this be done? How are they created? Is there some kind of automated tool that gets the packages from p2 repositories and builds them? Is there a detailed explanation somewhere of how they are created? (I am aware of Yoxos, but that is a few versions old)
Do the installation on an internet-connected computer, and then copy the folder to another computer. Question: Can this be done? Will a simple Copy/Paste work correctly? Is there anything I can delete from the installation that will be automatically recreated?
Use an Eclipse package, say JDT, and a downloaded copy (zip file?) of the CDT and other plugins, and install them on the target machine using the standard Eclipse plugin installation from a local archive method. Question Where can I get these downloads?
The simplest approach you could use is to start from the eclipse "classic" package downloaded directly from the site, and then manually install the other components you need via update manager. You can then zip the eclipse directory and distribute it without any problem.
Otherwise you could try to use Yoxos to create your package, download and distribute it

Move Plugins between different Eclipse versions

I need to install several plugins to an eclipse that is running on a remote 64bit Linux machine.
I tried copying the neccesary plugins to the plugins and feature folder on the remote machine but it did not seem to work.
The approach I wanted to try out now was setting up a new Eclipse installation with all plugins and replacing the whole eclipse folder.
But as I am doing this I realized that I have to use a 32 bit Linux and Eclipse. Is it possible to install 32bit Eclipse and just move the plugins and features to the remote machine?
Do I need to consider other things?
Can you recommend any other approach that would help me?
UPDATE:
The problem is that I cannot just start eclipse on the remote machine. I can access it via ssh but not run eclipse and install plugins via the wizards.
I also have no 64bit linux to prepare a complete eclipse that I can simply copy.
So what I meant is that I have to prepare either an eclipse installation or maybe just plugin folder and move that from my 32bit architecture to the 64bit one.
I can download the current eclipse folder but I cannot run it. When I try to start it with ubuntu nothing happens. I believe it is because its a 64bit version and I got 32 bit architecture.
Don't do this. Not only are there are a number of plugins with native-compiled fragments (different for 32-bit vs 64-bit), but in recent versions, Eclipse will not even register features and plugins that are simply dropped in. You should install plugins explicitly unless you are moving the entire installation between machines with compatible architectures.
You can't run a 64bit binary on a 32bit system without some kind of virtualization software that does a complete CPU emulation. VMWare, VirtualPC, etc... don't do this. They virtualize the system, but not the CPU.
The other way around: a 32bit binary on a 64bit cpu, is generally possible, if the OS (and processor) supports such things.
I think this is feasible.
The architecture should not be the problem. Unless the plugins contain DLLs or .so libraries invoked through JNI but there are very few examples (swt is one example but there are very few of them).
As a matter of fact, the reason why you have OS/arch/GUI specific versions of eclipse is not the java code but the native launcher (eclipse.exe on windows and SWT), all the rest can go bck and forth from one machine to the other, regardless of the arch, the os or the wondows manager.
However, dropping jars in the plugin directory of eclipse is not the recommended way of installing plugins any more (since 3.3 ?). It might work but there is no guarantee.
To install the missing plugins you should download them from eclipse itself (help => install new software...). If you tell us the specific plugins you have problem with, we might be able to help you more precisely.
The best way to go forward is to list all the plugins on the source machine (either from eclipse (help => about) and look at names having specific hints at arch/os/gui. All these cannot be copied over. All the rest should be safe.
As I said, beware of swt. Subclipse has a JNI dependent configuration if you decide to use JavaHL. And there are also "false" plugins such as xmlSpy etc who are noting more than JNI adapters but these are not mainstream.

Multiple installations of Eclipse on Mac OSX

I use Eclipse for everything. Python, Django, GWT, Android... But when you install all the plugins, Eclipse becomes very slow.
Is there a way that I can set it up so that there are two or more icons for Eclipse in the Applications directory, each for specific task?
Thanks
Developing in Eclipse for the past few years, I've found it's just easier to have several copies of the Eclipse directory, one for each kind of development I do (Android, java app, Grails). It's sometimes cumbersome installing new versions of Eclipse or new versions of the common plugins (Subclipse, etc), but it does make Eclipse start-up MUCH faster.
Simply create another install directory for Eclipse, with another shortcut to it, and only install the plugins you need for that dev environment. I use a different workspace for each one, though I'm not sure that's necessary, as long as you're using the same version of Eclipse for each install.

How can I use P2 to create identically configured IDEs for multiple platforms?

I have an Eclipse installation each on machines running Linux, Windows and OSX, but they are all configured somewhat differently. For example the one on Linux has avr-eclipse, but the Mac one doesn't even have CDT.
What is the easiest way to make all these Eclipse installations consistent with each other, as far as installed features go? I guess I could go through it by hand, but surely there must be a way to use P2 to generate this information?
As far as I know eclipse itself doesn't provide an easy to make sure the multiple installation identify.
But you can try P2 replication that is a plug-in to export your installation to file, then import it into other eclipse instances. You can install it via Eclipse marketplace.

Multiple eclipses for different feature set or single eclipse contains all plug-ins?

Eclipse can contains a lot of different feature set via plugins.
Do you install all the plugins in one single eclipse? or do you install STS from spring, Flex eclipse from adobe, or even RCP development bundle from eclipse.org, every eclipse variant handle its task respectively?
Which way do you prefer and why? speedy response? avoid the hassle of updating/installing plugins?
Thanks
If you have enough power on your workstation (and the right eclipse.ini), you can:
install all the major plugins in one operation (choosing the most complete distro, like the J2EE one)
install any other external plugins in a shared directory (meaning those plugins will continue to be referenced by any new version of eclipse distro you may install in the future)
In eclipse I prefer to install them separately, because it seems to keep things running smoothly, no upgrading things as they come along, only as a whole thing, it makes for a lot of duplication though... With Netbeans (which I prefer) I generally install everything in one place and it too runs smoothly, even when I upgrade different plugins and add and remove other ones.
I separate groups of related plugins/features by defining separate install locations (You used to be able to do it through the IDE, can't find the right button at the moment, see here for some guidance on doing this manually). That way you can enable/disable groups if you need to.
The install locations can also be shared between different Eclipse installs (with care!), and if you completely trash or want to upgrade Eclipse, you can redefine the eternal locations on the new install, no downloads needed.