eclipse-pde / eclipse.pde

Eclipse Public License 2.0
24 stars 58 forks source link

Provide tutorials/examples for newly added features regarding the bnd / bndtools and PDE cooperation #1294

Open konczdev opened 3 weeks ago

konczdev commented 3 weeks ago

I am absolutely loving the ongoing efforts for the bnd - pde - tycho interoperability but it is hard to adopt without some introduction tutorial / developer materials.

Example: BND project templates was introduced in 4.31. Even finding the actual wizard page was hard (btw I don't understand why it is behind the 'Generate OSGi metadata automatically', these kind of templating should be a top level wizard). After creating the template project I had absolutely no clue what can I do, what are the possibilities, how the the variables works, etc. Neither Bndtools - Project Templates nor Eclipse PDE Help says nothing about how this feature works. I am an experienced RCP developer, I can reverse engineer the source to understand the feature if I have time. Maybe this topic is related to Community Mentor Consultant

Takeaway: new features are nice but very few know how to use them.

Thank you all for your work.

laeubi commented 3 weeks ago

@fipro78 recently added a demo project to Tycho maybe this helps already as a starter, beside that What is bnd? should give you a first introduction into bnd instructions.

Please be aware that PDE features are mainly driven by volunteers and graceful funding (thanks again to Läubisoft, Smart City Jena, Faktor Zehn, Scheidt&Bachmann for initial funding of this feature), so everyone is invited to contribute either code, money, documentation, ... contributions are always welcome!

I don't understand why it is behind the 'Generate OSGi metadata automatically', these kind of templating should be a top level wizard)

Regarding your questions, the reason is simple, because how PDE works today you first need a project and then it determines what templates apply to the type of project (in this case an automatic manifest project), It would really be nice to actually reverse this, e.g first present the user all templates (+ an option to start without it what results in the usual workflow) and then automatically determine project type on template options but that's something not implemented yet and requires some efforts.

fipro78 commented 3 weeks ago

I have also updated my RCP Cookbook to use this new feature. But that is of course no replacement for help and improvement inside the IDE.

In case you are interested, the tutorial is here: https://github.com/fipro78/e4-cookbook-basic-recipe/blob/master/tutorials/Eclipse_RCP_Cookbook_Services_Events.md

konczdev commented 3 weeks ago

@laeubi Thank you for the the examples, I actually started to discover the bnd world a few weeks ago and planning to start some kind of blogging like @fipro78 do.

Regarding contribution: yes I know, this is why I say thanks the most time. I also wanted to become a contributor quite a few years ago, then life happened: suffering from multiple autoimmune diseases, almost disabled, it is often difficult to find the energy for everyday life. But I will try to do what I can, I actually started to plan some eclipse related materials.

@fipro78 you commented while I was writing this: thank you for your tutorials, I think I am one of your top reader of your blog posts and repositories :)

@laeubi Templating: I actually thought it might be a generic feature. Users could create templates with any content they want, and if it has some kind of project nature, then the smart importer would be able to handle it properly after creation. But maybe I am wrong as I don't know the implementation details.