Desktop. Not popular, but still alive. Eclipse Rich Client Platform (RCP e4)

Good day. Let's start. During my study of this technology, I ran into the problem that there is only one normal source of information on this topic on the entire Internet ( Lars Vogel ). And in it everything is written by the pros for the pros. Superficially, without details. There are also details, but for a fee. I want to add more detail to the fairly straightforward process of creating my first RCP application, so I will go into detailed explanations for each step. This article is suitable for beginners who have no idea about RCP and Eclipse and who want to take the first steps in mastering this technology, but who know what Java, JDK, JRE are.





Plan:





  1. Downloading and installing Eclipse





  2. Creating an rcp-plugin project





  3. File structure of the RCP project





  4. Conclusion





1. Download and install Eclipse

Eclipse JDK, , . Java SE Oracle JDK 8, . 15 JDK . Eclipse 2021-03 . «Eclipse IDE for RCP and RAP Developers». 





, Eclipse , . 





Eclipse: 





  • : Open Perspective -> Java. Eclipse Plug-in Perspective, ( Eclipse part) , «Java». 





  • Window -> Show View -> Project Explorer  — () . 





2. rcp-plugin

  plugin wizard , RCP .





 File -> New -> Other -> Plug-in Development -> Plug-in Project. 





.  





:





  • Project name — .





  • Use default location - , , .





    • checkbox — workspace. Workspace — , Eclipse , . Eclipse . , « ».





    • checkbox — ( Location).





  • Create a Java project  - Java project.





    • checkbox — Java , .. 3 : jre (JRE System   Library), (Plug-in Dependencies) . , .





    • checkbox - Java . , , , .





  • Source folder —   . -  src, ,





  • Output folder — . — bin, .





  • Target Platform — – Eclipse OSGi – ,





    • OSGi (Open Services Gateway Initiative) Java-, OSGi Alliance. , . , . RCP , .





    • Eclipse -  OSGi. , Eclipse. RCP . 





  • Working sets — . , working sets .





«Next»





.  





:





Properties — plugin. 





  • ID -  . , , .





  • Version — plugin, 1.0.0.qualifier. qualifier – SNAPSHOT maven. . XYZ.qualifier -> XYZ.YYYYmmddhhmm 





  • Name — , . wizard ID ( ) Name ( ) . .





  • Vendor — , , .





  • Execution Environment — java . 





  • Generate an Activator...: checkbox , Java-, . , - . 





  • This plug-in will make contributions to the UI  — « ». UI. Rich Client Application:





    • yes —   , RCP . : Application.e4xmi, *.product css 3 . build.properties ( bin.includes). , - – build.properties, - .  





    • no — , RCP . 





  • Enable API analysis — API . :





    • , API 1.





    • , API .





    •   2 1 API-Baseline, . API 1 2 , . 2 - API.





    • , .





  • Rich Client Application:





    •  yes - wizard 3 4 .





    • no —  wizard (contributions) 3 4 .  Contribution — , . , , .  





– RCP , RCP — Eclipse 4 RCP application. 





«Yes» «Next»





templates . Eclipse 4 RCP application.





«Next»





.  





:





  • Application window title — .





  • Create sample content — , , . 





  • Java package name — , .  Naming Conventions package name, , , . .





  • Add life cycle class — , ( , , ..). lifeCycleURI. 





«Finish»





Eclipse perspective Plug-in development. «No»,





RCP  . , , *.product, , launch an Eclipse application. , :





3. rcp

, . 





  • Test —   plugin. 





  • JRE System Library — JRE, eclipse Java . .jar jdk, Execution Environment .





  • Plug-in Dependencies — .jar . MANIFEST.MF Dependencies. , , .





  • src — . , (com.firstarticle.test) src , . 





  • css —   (css).





  • icons — (icons).





  • META-INF -> MANIFEST.MF. -> Open with -> Plug-in manifest editor. . (MANIFEST.MF, build.properties, plugin.xml).





    • Overview -  :





      • , : «General Information»  «Execution Environments».





      • , , «Plug-in Content», «Extensions», «Testing» «Exporting». , .





    • Plug-in Dependencies — . , . 





    • Runtime — , , , .





    • Extensions — , . , , lifeCycleURI — , . .





    • Plug-in Extensions points — , .





    • Build — , , . , , ,   build.properties. build.properties .





    • MANIFEST.MF, build.properties, plugin.xml — . , , ., . 





  • test.product — -> Open with -> Product Configuration editor - – . , , , (.. MANIFEST.MF — , test.product - ), , RCP. 





    • Overview —   «General Information», «Product Definition», , «Testing», «Exporting», .





    • Contents -  .





    • Configuration — , , .





    • Launching — .





    • Splash -  - .





    • Branding — , , « » .





    • Customization — css- . 





    • Licensing — URL- .





    • Updates —





    • Source —   test.product.





  • Application.e4xmi -  , (part, perspective, window), (handler, command, addon). , .





4.

, , . - , , . , . .








All Articles