Announcement Announcement Module

Spring Dynamic Modules forum decommissioned in favor of Eclipse Gemini Blueprint

With the official first release of Eclipse Gemini Blueprint shipped, the migration of the Spring Dynamic Modules code base to the Eclipse Foundation, as part of the Gemini project, has been completed.

As such, this forum has been decommissioned in favour of the Eclipse Gemini forums.
See more
See less
Build, Edit, and Release tools Page Title Module
Move Remove Collapse
Conversation Detail Module
  • Filter
  • Time
  • Show
Clear All
new posts

  • Build, Edit, and Release tools

    Hi everyone, long time Spring user, but quite new to OSGI. I have read through the "OSGi and Equinox: Creating Highly Modular Java™ Systems", and a fair bit of the documentation for DM, but still have some overarching questions about project file layout, design, and tools that I'd like to try and get a grip on before diving into my system. Here is a list of all the items I would like to do, any suggestions on how to accomplish all of them as a group would be much appreciated:

    -Editing in Eclipse
    -JUnit launching from Eclipse that can run tests across all, or a subset of, the plugins
    -Launching and debugging the system from Eclipse
    -Command line building of all features/plugins/fragments
    -Command line JUnit testing of all code
    -Command line generation of products that can be run
    -Launching the system from the command line

    I understand that Eclipse with the PDE(?) can resolve dependencies across plugins quite well and being able to build in Eclipse is great, but its not at all clear to me how to build outside of Eclipse, and I'm also quite foggy on how to spawn say a JUnit run that spans across all the plugins, either from within Eclipse or the command line.

    Thanks in advance!

  • #2
    Hmm not quite the reply I was hoping for!


    • #3
      halcyon, have you looked at the books on Spring DM from the project home page?
      There are also some links to other resources that talk on Spring DM.

      Since most of your questions are Eclipse based, you might find significant info in the Eclipse help files (I know I did) or by simply googling for tutorials/blog posts.

      Hope this helps,


      • #4
        Thanks for the reply Costin. I've read a reasonable amount of Eclipse related help, and some DM. Mostly my questions boil down to how to: is it possible to merge the develop and export in Eclipse world with the develop and export on the command line world (without Eclipse as a dependency) in one project. Have you ever been able to do this?


        • #5
          I tend to keep the two things separate. For example, while there's a Maven plugin for Eclipse, I haven't had a lot of success with it so while I develop and build in Eclipse, the artifacts are built from the command line.
          The plugin might have improved in the meantime but I'm quite comfortable with the command line.

          The too worlds can complement each other depending on your preference and what works best for you. If you target Eclipse, you are better off reusing the Eclipse plugins - if OSGi is your target, you could use outside Eclipse tools just fine since Eclipse usually just "consumes" the file system.

          In terms of PDE development, that is quite handy for Eclipse plugins but I can't comment on OSGi bundles - I haven't used it since it didn't meet my needs when I looked at it (2-3 years ago).


          • #6
            OSGI is definitely my target, and I would love (if possible) to be able to build from both. What command line tools do you use to build/test your plugins? And you mentioned you develop and build in Eclipse, do you generate your Eclipse project files and what not via Maven or another tool? Or do you manually set each up in Eclipse? And do you launch and debug your OSGI platform from in Eclipse as well?



            • #7
              You can take a look at the Spring DM project. We're using Maven with Bundlor for creating the OSGi manifests and that's about it.
              The projects in Eclipse are standard Java projects with maven sources. Spring DM provides its own in-process testing framework which works just fine from Eclipse.
              To build all the projects we can switch to the command line and run Maven.
              I usually use Eclipse to do per-project work and use Maven to build the entire source tree, run all the integration tests in a batch or create the release artifacts.

              Note that there's a chapter in the reference documentation about Eclipse PDE development and also a tutorial you might find interesting:

              There are other resources on the home page that might be of interest.


              • #8
                Great I'll check that out, thanks for the tips.

                As an aside, I saw that there is a lot of chatter about DM/DM Server moving to become an Eclipse project, is there any timeframe on when this might occur or what practical effects this has? I'm concerned about integrating a project that will be dead for the next year, or even eventually not have Spring support (Dynamic Modules).


                • #9
                  Spring DM is undergoing IP clearance by the Eclipse foundation. We are close to finalizing that step which means that hopefully in the near future, the code commits will start rolling in.
                  As part of Eclipse, I expect Spring DM/Gemini Blueprint to have larger visibility and tighter integration, at least within the Eclipse ecosystem.


                  • #10
                    Good to know, looking forward to it!


                    • #11
                      Are there news about Eclipse Gemini/Blueprint?