I want to base a tool on eclipse in a way that I could change eclipse framework whenever required. So probably writing a plugin is not a good choice ?
I want to extend it in a way as in Rodin(http://www.event-b.org/install.html)
The Rodin Platform is an Eclipse-based IDE for Event-B that provides effective support for refinement and mathematical proof. The platform is open source, contributes to the Eclipse framework and is further extendable with plugins.
So far I decided to download Eclipse platform project as direct开发者_开发百科ed in (http://wiki.eclipse.org/CVS_Howto) and downloaded all projects in( :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse).
Should I download all of them?
Some of them contain error.
Is it correct way to do what I am trying to do?
How should I remove those errors?
I want to base a tool on eclipse in a way that I could change eclipse framework whenever required. So probably writing a plugin is not a good choice ? I want to extend it in a way as in Rodin(http://www.event-b.org/install.html)
Well there can be two approaches to extend eclipse framework. First approach, as you already know, is writing eclipse plugins. This is the way other platform specific versions or flavors of eclipse do. For example, eclipse Eclipse WTP and Eclipse Modelling work in the same way. They have core eclipse base i.e. classic Java base and then on top of it they have their on set of plugins and features. To give it a more product like feel, they have their own perspectives, views, cheatsheets and splash screen. Also to make your tool extensible you can provide custom extension points. These links would be useful:
- PDE Introduction
- Plugin Tutorial
- Hello world plugin
- How to write a plugin for Eclipse?
- Eclipse Extension Point
Alternate Approach
The second way is more like making your own product, which in turn is based on eclipse framework, commonly known as Rich Client Platform (RCP). There are tools like IBM Lotus Notes, IBM Sametime, Bittorrent client Vuze. Again if you want to have an extensible IDE then you have to provide some custom extension points or use the existing ones. To make your application moduler, you have to organize it in plugins. The main benefit against the previous approach is that you don't have to ship the plugins which you are not using, which in turn makes your product smaller. The problem with the approach is that you have to think out the look and feel of the IDE, have to implement or least hook into the existing functionality like plugin installation from remote sites, code refactor, Java IDE, run/debug configurations etc. These links would be useful:
- RCP Tutorial 1
- RCP Tutorial 2
- RCP Tutorial 3
- RCP Tutorial 4
So far I decided to download Eclipse platform project as directed in (http://wiki.eclipse.org/CVS_Howto) and downloaded all projects in( :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse). Should I download all of them?
Well it depends what do you want to do with them. If you are going to modify some functionalities (add or remove) from them then YES download/checkout the ones which you want to modify. Otherwise, if your intention is to extend eclipse then you need not to checkout/download any of the plugin/sources. Most of them have well defined and documented extension points; just use them.
Some of them contain error. How should I remove those errors?
Its hard to say how to remove the errors without the stacktrace :). Still you might not need the source as I have mentioned above.
Is it correct way to do what I am trying to do?
I will suggest you to go in a step wise manner. For me the logical step would be:
- Learn about SWT widgets
- Play with JFace
- Read the releavent eclipse corner articles
- Sit back and think what all features you need, out of that what can be reused from eclipse and what extra you need to develop.
Extending eclipse is a very well defined process. You won't face any problem :). Good luck.
To base a tool on eclipse, you contribute plugins. You don't need to get the ones that are in CVS. Simply go to the eclipse download page, http://download.eclipse.org/eclipse/downloads/ and get the Eclipse SDK. That contains PDE, the Plug-in Development Environment, and source and schema for all of the API you would use.
Then check out the Official FAQ as a getting started reference. There's even a section on how to contribute your own language: http://wiki.eclipse.org/The_Official_Eclipse_FAQs
There's some "Getting Started" stuff on the Eclipse Wiki (includes a lot of the links that Favonius and Paul mentioned).
http://wiki.eclipse.org/Learn_About_Eclipse
精彩评论