Finding about Eclipse dependency (e.g. for red5) - eclipse

According to the Red5 plugin for eclipse,
You must use the Java EE distribution of Eclipse. The standard Java distribution will not work.
But what part exacty of the Java EE distribution is needed. This way I can bring my current distribution of Eclipse to the level needed for Red5 without having to install an entirely new distribution just for Red5.
If you don't have an answer, but can point me to a way I can find it out for myself somehow what that dependency could be, that would be good enough too.

Every eclipse plugin has an (unique) identifier and a list with identifier it depends upon. If you unzip the jar file you will find a directory "META-INF" with a textfile "MANIFEST.MF". There will be an entry "Require-Bundle:" with a list of bundles (e.g. org.junit4;bundle-version="4.5.0"). This list tells you what you have to install for the plugin to work.
The id of the plugin is the entry "Bundle-SymbolicName:". With the ids on hand you should be able to determine what plugins exactly you have to install.

The installation processed described in this page is through an old pre-P2 area with eclipse3.3
(source: red5.org)
You could try the same update site, with an basic eclipse3.5.1: the P2 provisioning mechanism should list for you all the missing components.
You can then compare the missing packages with the different eclipse distros and see for yourself exactly what part if the J2EE distro you actually need for the Red5 eclipse plugin.

You mainly need the JST and WST plugins available from Eclipse themselves.

Related

How To Create Webstart From Existing Eclipse Installation

I want to create a java webstart product that includes all of the contents of my current eclipse installation - standard eclipse java edition with some extra plugins that I have developed/downloaded.
There are a number of tutorials showing how to do this for an eclipse RCP application, but I don't want to create an RCP specifically for this purpose (I also tried to do it and never really managed to configure the app to look just like my workbench).
So, is this even possible? Any pointers?
Update: I followed this article, but after deploying my application in the web server and running the jnlp, the jars were downloaded but nothing happened. I tried changing the eclipse.product property to other "possible" values, but didn't help.
Do you really need the web start software?
Since eclipse doesn't requires installation, and the plugins are installed in the same directory of eclipse why don't you zip your eclipse once you have it configured, and redistribute it as a zip. Even eclipse itself is distributed as zip.

Boostrapping new Eclipse machines with all the Plugins

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)

Installing eclipse Web Tools Platform (WTP) - update site does not work?

I'm trying to install the WTP (web platform tools) to my Eclipse installation so I can get the XSL transformations working. The base Eclipse they installed for me here was the plain Java IDE (the splash screen says "Ganymede" if that means anything). Looking at this site, the URL to get the download should be here: http://download.eclipse.org/webtools/updates/ ...But when I give that URL to the Eclipse update manager, I get an error telling me: "No repository found at http://download.eclipse.org/webtools/updates/"
Anyone else had this problem? Anyone know what might be up? Anyone know how to get the xsl-transform plugin installed?
EDIT:
I should have mentioned before that I want to find a way to do this without installing any new instances of Eclipse. This process will eventually be sent to several other developers who already have Eclipse (same version that I'm testing with) and I'd rather just do an in-place upgrade rather than have everyone go and install a new product.
UPDATE:
I found another plugin, Xcarecrows 4 XML which can also do XSL transforms. The interface is ugly and seems more than a little quirky, but it's also a small download, and at least it runs and transforms. Unless I can find an easy way to get WTP working, I'll probably just stick with this.
You can try and install WTP through the main Ganymede update site:
http://download.eclipse.org/releases/ganymede/
Or you can download the latest Java EE bundle and use that instead of your current Eclipse
(do NOT unpack it on top of your current Eclipse, but unpack it elsewhere, to test that second installation: it will come with WTP inside)
Note: check then "How do I start Eclipse" to point to your existing workspace in order to see all your previous project in your new Eclipse installation.
As mentioned in your link, XSL Tools is now part of WTP (for Eclipse 3.5 Galileo), and that may explain why your Eclipse Ganymede (3.4) might not interpret correctly the P2 update site for WTP (P2 being the new Eclipse provisioning mechanism introduced late in the 3.4 release cycle)
For Eclipse 3.5, you have an XSL Tools installation illustrated here:
But Eclipse3.4 is more likely to be compatible with XSLT0.5 and you will need a separate installation, because "XSL Tools" wasn't yet part of WTP.
I am not sure, however, where to find such an installation package within the Eclipse projects.
Use the following update site :
For Juno :
http://download.eclipse.org/webtools/repository/juno/
For Indigo :
http://download.eclipse.org/webtools/repository/indigo/
I'm assuming you don't have any firewall exceptions for Eclipse right?
The site for the WTP update is indeed the one you've listed. Maybe post a screenshot? You've added it specifically to your remote update site list?
Either way try a manual update which should be more reliable and get you up and running for now.
All-In-One Update (Eclipse IDE included):
Go to the Eclipse Download site.
Grab the all-in-one package: Eclipse IDE for Java EE Developers
Install, have a coffee and enjoy. (WTP is included)
Manual Update your existing installation of Eclipse:
Download the applicable WTP source package to your desktop
Shutdown Eclipse
Extract the package to your Eclipse installation directory
Startup Eclipse. (WTP is now available)
Follow the steps in the FAQ at http://wiki.eclipse.org/WTP_FAQ#How_do_I_install_WTP.3F .
Are you behind a proxy? If so, you need to make sure you configure your proxy settings in Eclipse.
Window > Preferences
General > Network Connections
Ok, I can probably get it working if I do a clean install of Eclipse. I can do that on my machine, but not the other team members' machines (at least not without going through many emails and paper work) so I'm going to say that XCarecrows 4 XML is the solution. It is able to do XSL transformations in Eclipse 3.4 and doesn't require anything else to be installed. Since XSLT is all I need, the plugin will do.
you can use the marketplace:
https://marketplace.eclipse.org/content/eclipse-java-ee-developer-tools-0
like the site says:
Drag to Install!Drag to your running Eclipse Workspace.

Where should Eclipse third-party plugins be stored?

We have an Eclipse RCP product, which means it depends on a number of Eclipse plugins (for the UI etc). We have set up a reference Eclipse ("target") to supply the latter.
Our product also depends on a number of third party plugins. Is there a standard location for these to be put?
We have a few of our third-party plugins in the /plugins of the target Eclipse, but this seems wrong to me. The third party plugins change more frequently than, or at least in a different timeframe to, our reference Eclipse.
I tried putting some third party plugins in a separate project in the workspace (under version control), but the PDE headless build did not seem to find them - even though I used the pluginPath property in the headless build.properties.
This is Eclipse 3.4.2. I am aware than the handling of target platforms has changed somewhat in 3.5.
Most of the comments I've seen see on the web about this seem to assume that you're writing a plugin to be added to a standard Eclipse installation. We're not, it's a completely separate product.
For my RCP applications I created a customized target platform directory for it to use (e.g. rcpapptarget). Under that directory I unzip the following packages:
eclipse-RCP-SDK-3.4.2-win32.zip
eclipse-3.4.2-delta-pack.zip
Then I add what ever other eclipse or third party plug-ins that my application will need. For example:
the latest GEF all .zip file
jay libs EclipseCallBasic_1.1.0 plug-in
derby distributed plug-in
additional eclipse plug-ins needed for help support, cheatsheets, updates etc.
I then setup a workspace for developing that RCP application and point the workspace's "Target Platform" to use that customized target platform directory. I do all my development using that target platform and my headless builds use it too.
To set the target platform choose the Window | Preferences command and then select Plug-in Development | Target Platform from the preference tree. Set the "Location" to point to the directory you created.
There isn't a standard that I know of for where 3rd part plugins should go. You can define an external extension location and store your party plugins/features there. This also allows you to reuse the plugins in multiple Eclipse installs if you wish.
You add an Extension location by going to
Ganymede onwards: Help->Software Updates->Available Software->Add Site->Local
Older versions: Help->Software Updates->Manage Configuration->Add Extension Location
For Ganymede onwards, the extension locations work a bit differently (IIRC the plugins are copied to the standard Eclipse install, which kind of defeats the point),there is however a new concept called dropins that you might find useful.

How to find list of installed Eclipse features from external program?

I am preparing windows installer for my Eclipse plugin. I want install it into target eclipse product using P2 director. I am targetting only Eclipse 3.5 for now.
Installer should check that prerequisite features/plugins are already installed. I am not sure how to do this check. (Other reason for this check is to choose what other features to install, as I will bundle some prerequisites in the installer).
Easy solution is to look into eclipse/features/ and eclipse/plugins/ directories, but plugins may be installed elsewhere too: dropins directory and linked via links directory.
I would like to get list of installed fetures and plugins from P2 (profile?), if possible. Is there any way to do this? Any better solutions?
Have a look at the P2 agent, it does what you are after. Browse the source code to see how it interacts with the repository. You can use the p2 director to streamline the actual installation.
The Equinox Incubator also has a number of useful links
At http://wiki.eclipse.org/Equinox_p2_Getting_Started, they talk about eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info file:
The file bundles.info contains a list of all the plug-ins installed in the current system. On startup, all the plug-ins listed in this file are given to OSGi as the exact set of plug-ins to run with. Any extra plug-ins in the plugins directory or elsewhere are ignored. ... However, it's useful to know about this file so you can see exactly what is installed in the system you are running.
Well, it's not list of features, but list of plugins is good too.