Eclipse Bundle Recipes

The Eclipse Platform is based on OSGi and OSGi is a model to modularize Java applications at runtime. Unfortunately, not all Java libraries provide the necessary metadata required for OSGi. Thus, if developers want to consume a library, they have to generate the OSGi metadata themselves. This problem is solved by the Eclipse Bundle Recipes project. It provides a library of templates (the “recipes”) and tools that can be used to create OSGi bundles. You have a library that you'd like to use in your OSGi project? Then stop by in this session and see if the Eclipse Bundle Recipes (EBR) project already has a recipe for your. You will learn how easy it is to consume libraries from Maven repositories and turn them into OSGi bundles. We will also demonstrate how the recipes and build system can be deployed in to create bundles at large scale and consumed in your builds. Last but not least, we will also show you how to contribute recipes to the EBR project.

 
 

Outline/structure of the Session

Slides and a short demo. If there is interest this can also be turned into a tutorial with hands-on sessions.

Learning Outcome

Introduction to the Eclipse Bundle Recipes project. Attendees will have a blueprint for creating OSGi-ready libraries out of any other Java (non-OSGi) library.

Target Audience

Eclipse Plug-In and RCP developers who use 3rd party libraries and looking for a way to automatically pull them in during the build.

schedule Submitted 1 month ago

Comments Subscribe to Comments

comment Comment on this Proposal
  • Pradeep Balachandran
    By Pradeep Balachandran  ~  1 week ago
    reply Reply

    Hi Gunnar, thanks for the proposal. This is very useful for the community.

    Could you please add the following details to the abstract, learning outcome and target audience?

    The abstract could give a background of Bundle recipes, why / where it is useful and what problem it addresses.

    The learning outcome could give details on what a participant would be able to do with the knowledge acquired from the session.

    The target audience could indicate who will benefit the most - eg: Developers who use 3rd party libraries and looking for a way to automatically pull them in during the build.

     

    • Gunnar Wagenknecht
      By Gunnar Wagenknecht  ~  1 week ago
      reply Reply

      Thanks for the feedback! I added the information. Let me know if you need more and/or have further questions. Happy to answer them.

  • Sarika Sinha
    By Sarika Sinha  ~  1 week ago
    reply Reply

    Abstract can give little more information on the need, background and usefulness.


  • Liked Vaibhav Choudhary
    keyboard_arrow_down

    Java 9 - The game changer for Cloud

    Vaibhav Choudhary
    Vaibhav Choudhary
    schedule 1 week ago
    Sold Out!
    45 mins
    Talk
    Advanced

    Java has evolved and continues to remain as one of the most reliable platforms for Application Development. With the advent of the Cloud it is paramount for Cloud scale applications to run on a smaller footprint. The upcoming Java SE9 release, with a host of features, helps just that. Java is evolving as a modular and cloud focused platform. One of the highlights of Java SE 9 is Project Jigsaw. It will enable our customers to have a leaner runtime with enhanced security and better performance. In this talk, the audience will understand how Java 9 better enables developer productivity, reduces server overhead, improves application density and predictability and why it is the best platform for SAAS and PAAS in the cloud.

    Scope of the final presentation:-

       1    Project Jigsaw Overview and its implication on Oracle cloud.

       2    Other key Java Features to look forward to - AppCDS (Low Latency Application Development with great startup time) , G1 Garbage Collector (Predictable Pauses by Application), Excellent Monitoring tools.

       3    Modular JDK Demo - Java + Eclipse + Docker 

       4    Conclusion - Java is the future of Oracle cloud.

  • Liked Manoj NP
    keyboard_arrow_down

    JDT Embraces Java 9 - An insider's perspective

    Manoj NP
    Manoj NP
    Sasikanth Bharadwaj
    Sasikanth Bharadwaj
    schedule 2 weeks ago
    Sold Out!
    20 mins
    Talk
    Intermediate

    Eclipse Java Development Tooling or JDT has its own Java compiler at its core, aptly called the JDT Core consisting of the Java compiler and various tools including java model, search infrastructure, content assist, Abstract Syntax Tree Tools etc.  Java 9 is the latest entry in the Java world bringing along-with it a "module" of changes - so to speak.  Any change in the language standards affects JDT directly. While some of the earlier language specification changes affected only the compiler, Java 9, in contrast, has a direct impact on user who uses Eclipse IDE for creating and managing Java Projects. Java 9  introduces the concept of "Modules" which affects JDT from the compiler level to the project dependency layer affecting a normal user. Support for this feature will be dealt with, in detail, in this talk.

    This talk would start with a brief overview of the Java 9 features especially the "module" feature that have direct impact on Eclipse users,  describe the JDT support for features, touch upon some of the design aspects, and would conclude with a demo of Eclipse JDT for Java 9.

  • Liked Rajesh Sola
    keyboard_arrow_down

    Gateway design with Eclipse Kura - Taking to new heights

    Rajesh Sola
    Rajesh Sola
    schedule 2 weeks ago
    Sold Out!
    90 mins
    Tutorial
    Intermediate

    This talk cum tutorial aims at introducing Eclipse Kura, OSGi based framework for IOT gateway design.It starts with kura architecture and elements like bundles, services, web admin interface etc and a tour of available services for hardware interfacing, local wired,wireless connectivity and cloud connectivity options.It then proceeds with case study of building custom services with examples on HTTP REST Service, CoAP Service and InfluxDb service,with the help of these few bridging scenarios can be covered with cloud options like ThingSpeak,OpenSensors.io etc and focusing on storing data from gateway side using InfluxDb as an example.

  • Liked Gireesh Punathil
    keyboard_arrow_down

    Show and tell: Generator patterns and new use cases

    Gireesh Punathil
    Gireesh Punathil
    schedule 3 weeks ago
    Sold Out!
    45 mins
    Case Study
    Intermediate

    While ES6 generator patterns are designed to empower javascript language with iteration capabilities on heterogenous data structures in custom mannaer, the event-driven asynchronous programming model of Node.js transforms this feature into an interesting semantics in the execution flow control with un-precedented potential in managing concurrency.

    The session talks about how the generator pattern helps in iterating over deeply nested structures in a repeatable manner which follows a yield-resume pattern. I show a couple of real-world use cases where this approach helps in addressing performance / scalability / concurrency issues in large scale node.js applications, with an associated demo.

  • Liked Ramya Authappan
    keyboard_arrow_down

    CDC Tests - Integration Tests cant be made simpler than this!

    Ramya Authappan
    Ramya Authappan
    schedule 3 weeks ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    CDCs are “Asynchronous Integration Tests”.CDC stands for Consumer Driven Contract. We can now forget about bringing up all the microservices to test the integration between different microservices.This makes integration tests as simple as unit tests. This is a must-have test for all microservices.

  • Liked Deepali Kishnani
    keyboard_arrow_down

    Natural Language Based Query Engine for Eclipse Modeling Framework

    Deepali Kishnani
    Deepali Kishnani
    Harkirat Singh Lamba
    Harkirat Singh Lamba
    schedule 3 weeks ago
    Sold Out!
    45 mins
    Demonstration
    Beginner

    Searching in big databases is the need of the hour. With ever growing applications and customer base, quicker search over the data helps you survive. Modeling Frameworks sit at the core of modern software. The increasing complexity of business requirements are reflected in the increasing complexity of the modeling framework. What if you could query the complex models within seconds? This is just one use case of VIATRA Query.

    VIATRA Query is an Eclipse project. Initially conceived by the Budapest University of Technology and Economics, VIATRA is an Event-driven and Reactive Model Transformation Platform.  We have used VIATRA Query to create a small search engine for Ecore models of EMF using Natural Language Based Rule Engine and would like to share our experience with it.

    VIATRA Query enables the user to query the EMF models without having to manually traverse them. Complex queries can be converted into patterns. Parameters to models can be passed at runtime, something which is crucial to any query engine. The idea of creating a search engine using VIATRA Query opens up new and innovative ideas of working with Eclipse Modeling Framework. To know more about the algorithm behind this technology or how we made it work, please join us at the Eclipse 2017 Summit!

  • Liked Sravan Kumar Lakkimsetti
    keyboard_arrow_down

    DevOps practice in eclipse

    Sravan Kumar Lakkimsetti
    Sravan Kumar Lakkimsetti
    schedule 1 month ago
    Sold Out!
    20 mins
    Talk
    Beginner

    This talk takes you through the DevOps best practices followed in Eclipse from the filing of the bug to the state of commit of the solution of that bug. As all area aware, all the issues are tracked via bugzilla, and the story starts with the creation of the bug

    New -> Analyze and move to Assigned.Assigned: The owner of the bug analyzes, finds the solution, writes the test cases and commits into Gerrit. Gerrit runs all the tests and if found successful will flag so. Then the owner adds the reviewers, Reviewers review the code and suggests any changes inline and owner acts upon them. This repeats till there are no more review comments. Owner commits code using gerrit itself.

    This talk will take you through a live demo of this process.

     

  • Gurpreet Sachdeva
    Gurpreet Sachdeva
    schedule 1 month ago
    Sold Out!
    45 mins
    Talk
    Advanced

    Java 8 was released quite a while ago and we are now close to release of Java 9. There are discussions of Java 10 features also. There are many who are still stuck with older versions for various reasons. Many people claim that their code supports Java 8 but they aren't really using the powerful features of Java 8 like lambda expressions, Streams API and the new Date / Time API. This session does a quick recap of the powerful and unique features of Java 8. Tips and techniques to identify areas of code fit for refactoring to Java 8, will be shown. Eclipse can be leveraged to refactor code to use features like lambdas and streams. Pros and Cons of these features would be covered so that an informed decision can be taken whether to refactor or not.

  • Naresha K
    Naresha K
    schedule 1 month ago
    Sold Out!
    45 mins
    Demonstration
    Intermediate
    The Eclipse Foundation project Vert.x is a toolkit for developing polyglot reactive applications on the JVM. One can develop applications on Vert.x using not only JVM languages like Groovy, Ceylon but also languages like JavaScript and Ruby. Vert.x leverages event-driven and non-blocking techniques with the intention to help developers write high performant applications that are resource efficient.
     
    In this presentation, I will demonstrate the Vert.x way of architecting and developing applications. I will develop a few Verticles talking to each other through the event bus and expose the functionality through HTTP. I will use Groovy for most of my code examples along with JavaScript and Java to demonstrate the polyglot options.
  • Gurpreet Sachdeva
    Gurpreet Sachdeva
    schedule 1 month ago
    Sold Out!
    45 mins
    Talk
    Advanced

    Java 8 was released in March 2014 with lambda expressions as its flagship feature. Many people have used them to write more concise and flexible code. Lambda expressions can be combined with the Streams API to express rich data processing queries. Many popular programming languages already had support for "lambdas" aka "closures". Interestingly, many of these languages run on the JVM and Java as the most prominent language running on the JVM did not want to be left behind. Java has provided support for lambdas using an elegant mechanism of "invokedynamics". In addition to this the streams API provided support for concurrent execution of instructions to suit new age parallel pipelined microprocessors. This session does a recap of Lambdas and Streams and their benefits with some practical examples. It then goes on to see how the community has taken these concepts. The excellent support provided by Eclipse for Lambdas will also be covered.

  • Vaibhav Choudhary
    Vaibhav Choudhary
    schedule 2 months ago
    Sold Out!
    45 mins
    Lightning Talk
    Intermediate

    World is moving fast towards parallelism. It will soon be seen that parallelism is the default nomenclature of the new software design. As a core member of Java Platforms Team, I want to bring the fact that how programming languages are leveraging the power the parallelism in this world of many core processors.

    Though parallelism is the new demand, it is extremely hard generate performance on parallelism. We need to learn "the best practices" for parallelism.