Lightweight Eclipseplugin for RTC - rtc

IBM has this big 200+ Mb Eclipse plugin where I'm given access to everything and all functionality of Eclipse.
Is there a smaller more lightweight Eclipse plugin available that just gives access to the information a developer needs. Basically just a list of the workitems assigned to me or my team.
Yes, I can configure the big existing IBM plugin to just display that info, but then I'd still have this massive behemoth installed in my Eclipse.
I am aware of Tasktop Dev that allows me to import the workitems into my mylyn tasklist, but I'm looking for something cheaper.

No, because that plugin would have to manage work items and change sets (the list of versioned files), that is the planning and the source control part.
Plus you would need the EMF - GMF dependencies, part of the 200+ MB bundle, as described in "Tip: Installing the Rational Team Concert client into Eclipse 3.5.x".
Which is basically 75% of what the RTC plugin is (the rest being a link to the JBE: Jazz Build Engine).

Related

Dynamic use of Workspace Mechanic in Eclipse

Can Workspace Mechanic be configured to load certain rules only if a given plugin or feature is installed?
For example, we have both Java and C++ developers. As it stands today, you get the option to follow both Java AND C++ guidelines in the workspace popup. Can Workspace Mechanic check if JDT and/or CDT are installed?
I do not think Workspace Mechnanic supports this out of the box. However, as it provides extension points, you may be able to build your own plugin to reach your goal. I did it once, but had to use a fragment to access internal capabilities not to reinvent the wheel.

How to ensure eclipse plugin has required bundles available?

I'm just starting to develop a new eclipse plugin where I want a web application server running in Eclipse. I found a nice blog, OSGi as a Web Application Server, that describes how to do this. The author suggests creating a target environment for my bundle requirements, and some of those bundles get pulled in from the Equinox Project SDK (now called Equinox Target Components in Juno). I notice that the tutorial project runs fine when my target platform is the platform I created in the tutorial, but fails to start when it is the default platform. So, now for my question...
If I need bundles that are not part of the default, how will my plugin project get access to those bundles? Will I need to deploy them along with my plugin? How would I know if the user's eclipse does or does not already have those required bundles?
You was not much clear about what kind of application you are developing. Running a web server in an Eclipse IDE as a plugin don't make any sense to me. This kind of server application is best just running on top of Equinox.
Anyway, the right path is to create a "Product Configuration" file and add categories that contains the needed bundles (go to File/Plug-in Development/Product Configuration).
With this file you can run an instance of the product (inside the IDE) and can export it (create a zip containing all needed bundles)
And if you want to able your user to install plugin inside his IDE you must create a P2 repository (using a Target Definition File) and expose the exported directory within a Http server. You could research about Tycho to build this kind of components in a maven style.
Well, I'm not sure if re-inventing the wheel again is really sufficient.
You might take a look at Pax-Web for inspiration on how to do it, or take a look Apache Karaf as a OSGi-Container (using Pax-Web). Or even better start contributing to one of the two :-)

Adding a "Create Jira Ticket" view to an Eclipse RCP application

I work on an Eclipse RCP application and we are trying to encourage people to move from our old trac bug reporting system to our new Jira based system.
Due to users being unfamiliar with Jira, they tend to still report bugs by the old system in preference to the new system. We don't want to force people to switch by taking down the old trac system, so I thought that if it were much easier to report via Jira however, they would be much more likely to switch.
What I was thinking was that I could integrate a "Submit Jira Ticket" view directly into our application, so that submitting a ticket was always a button click away, and where some of the complexity of Jira could be hidden behind default fields added by our application.
What would be the easiest way to achieve this? Are there already eclipse plug-ins that I could add to my Eclipse RCP configuration, or would I have to write my own view plug-in?
One option would be to use the Mylyn Eclipse plugin which already has a JIRA connector. This lets you create, update, view and search for issues and has been around for a while, so it's very stable.
If you want a simpler form to just submit issues, then you'd probably have to write your own view. JIRA provides a REST API that would support this.
As noted by #NickWilson, you can use Mylyn as the vehicle..
Have a look at the extensions points org.eclipse.mylyn.tasks.core.templates and org.eclipse.mylyn.tasks.bugs.support. For an example of their use by Atlassian see the plugin com.atlassian.connector.eclipse.jira.ui.
These extension points are used to report bugs via the "Help" >> "Report Bug or Enhancement..." menu item.
Atlassian has a plugin for Eclipse depending on the version of JIRA.
https://marketplace.atlassian.com/plugins/com.atlassian.ide.plugins.eclipse.jira
Once you install this plugin, use that updated eclipse install as base eclipse install and include the feature in your bundled rcp application.

wso2esb - project management

I evaluate SOA products of wso2 for few weeks and there are some basic (and crucial to me) features which I cannot find/use or maybe it just does not exist. I want to make sure.
First of all, creating IDE support. As probably most of you know wso2 team delivers Carbon Studio which is quite a nice thing. Unfortunately when it comes to team work so often importing existing projects into IDE I hit a wall because:
1) If I use Distribution Project I'm required to commit .projects files which actually contains nature understand by Carbon Studio. It is acceptable but it is as well bad practice in my opinion.
2) If I use Maven then after import I'm going to loose project nature so plugins are not going to work without preparing .projects.
Am I missing something? I would like get rid of .projects and be able to use IDE on 100%. Is it possible? Can't it be generated or something. Normally plugins are trying to recognize file type and edit it with specified plugin. I understand that most Synapse configs (for example) are all XMLs but that is not a reason for me. Any way, does someone know some kind of solution?
Also Distribution Project cannot be build from command line if known maven repositories cannot deliver some artifact. I can write maven plugin to implicitly build each wanted artifact but it is not something I want to do if maven can do it for me. And I cannot use maven because after import I'll lose IDE features.
To me IDE is useless if I'm required to fix each project before actually importing it. Time is very precious.
The second important and unacceptable feature is importing jars into project when using, for example, generators. Why created project cannot be configured to use dependencies?
Robert
what is the developer studio version you use? From developer studio 2.0.0 there is a feature to import a carbon project. Then you don't need to commit the .project files.
Goto import --> WSO2 --> Existing WSO2 projects into workspace

Difference between feature and plugin.xml?

I have some basic questions in eclipse plugin development, can anyone give clarification of the following questions,
When should we have to add features in our plugin development ?
What is the difference between feature and plugin.xml ?
Regards
Mathan
As mentioned in this thread:
A plugin is the eclipse "unit of work". An OSGi bundle that supplies a classpath and can contribute to eclipse through extensions.
A fragment points to a host plugin, and anything it provides (classpath, extensions, etc) are "sucked" into the host plugin. A fragment is also a more specialized OSGi bundle.
A feature represents a versioned collection of plugins, and is used for configuration management in eclipse. They can be deployed manually or through the update manager. If you want to deploy through the update manager, then you need to use features to represent your plugins.
So if you want to manage your plugin or plugins through the update manager, a feature is in order.
You can find more in the Eclipse Help:
Feature
Features do not contain any code.
They merely describe a set of plug-ins that provide the function for the feature and information about how to update it.
Features are packaged in a feature archive file and described using a feature manifest file, feature.xml.
Plugin
While features are organized for the purposes of distributing and updating products, plug-ins are organized to facilitate the development of the product function among the product team. The development team determines when to carve up program function into a separate plug-in.
Plug-ins are packaged in a plug-in archive file and described using a plug-in manifest file, plugin.xml.