Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [m2e-users] m2e-users Digest, Vol 54, Issue 8

Thanks Igor and Alejandro,

So adding the m2e-tycho plugin worked. If I add the profile as suggested to create the MANIFEST.MF in the root path, the launch config will show up as expected and up-to-date.....

...unfortunately in this case when launching I will receive errors for my DS-services (which are generated by the maven-scr-plugin) like:

!ENTRY com.xyz.servlet.discovery 4 0 2013-07-16 00:07:41.520!MESSAGE Component descriptor entry 'OSGI-INF/com.xyz.servlet.discovery.impl.DiscoveryMessageBodyWriter.xml' not found

The OSGI-INF is located in target/classes. I tried copying it to the next to the META-INF as well, but this give me just other creepy errors (something like: The path com.xyz.servlet.discovery was not found but was in target/classes/com.xyz.servlet.discovery).

Anyhow you already helped me a lot. Thanks to everyone :)

Cheers
Philipp




Message: 1

Date: Mon, 15 Jul 2013 11:39:34 -0400
From: Alejandro.Endo@xxxxxxxxxxx
To: Maven Integration for Eclipse users mailing list
        <m2e-users@xxxxxxxxxxx>
Subject: Re: [m2e-users] Problem with M2E and OSGi runtime launch
        config
Message-ID:
        <OFF85CACD2.9CA243C1-ON85257BA9.0054958A-85257BA9.00560525@xxxxxxxxxxxxx>

Content-Type: text/plain; charset=US-ASCII

It does work with OSGi Framework launchers. We use them every day.

Two tricks are
1) Install the Tycho Configurator
2) configure the MBP to put the manifest in the place PDE expects it and
the plugin.xml if you use extension points

This is the profile I created to configure everything for PDE

<profiles>
                <profile>
                        <id>in-eclipse</id>
                        <!-- activated only when running in m2e (eclipse) -->
                        <activation>
                                <property>
                                        <name>m2e.version</name>
                                </property>
                        </activation>
                        <build>
                                <plugins>
                                        <plugin>
                                                <groupId>org.apache.felix</groupId>
                                                <artifactId>maven-bundle-plugin</
artifactId>
                                                <configuration>
                                                        <manifestLocation>META-INF</
manifestLocation> <!-- PDE expects it in the root of the project -->
                                                </configuration>
                                        </plugin>
                                </plugins>
                                <resources>
                                        <resource>
                                                <!-- pde (project root) -->
                                                <directory>src/main/resources</
directory>
                                                <targetPath>${basedir}</targetPath>
                                                <includes>
                                                        <include>plugin.xml</include>
                                                </includes>
                                        </resource>
                                        <resource>
                                                <!-- normal (output dir
, /target/classes) -->
                                                <directory>src/main/resources</
directory>
                                                <targetPath>$
{project.build.outputDirectory}</targetPath>
                                        </resource>
                                </resources>
                        </build>
                </profile>
        </profiles>



Alejandro Endo | Software Designer/Concepteur de logiciels




From:   Igor Fedorenko <igor@xxxxxxxxxxxxxx>
To:     m2e-users@xxxxxxxxxxx,
Date:   2013-07-14 09:00 AM
Subject:        Re: [m2e-users] Problem with M2E and OSGi runtime launch config
Sent by:        m2e-users-bounces@xxxxxxxxxxx



For projects that use maven-bundle-plugin (m-b-p for short), m2e-tycho,
despite the name, will execute m-b-p to generate bundle manifest as part
of eclipse workspace build. It will also make projects using m-b-p
visible to PDE tools, launch configuration in particular, so you can add
these projects to the list of bundles enabled in the launch configuration.

I only use this with "Eclipse Application" and "JUnit Plug-in Test" and
do not know if it works with "OSGi Framework" launch configurations.

Theoretically, you should not need to change anything in your pom.xml
files, but due to some PDE bugs I did not care to debug you have to
change location of generated bundle manifest to META-INF/manifest.mf. I
usually do this in pom profile activated by m2e.version property, so
regular command line build works as is. I also lock version qualifier
'.qualifier' (or any constant string, really) in the same profile to
avoid unnecessary workspace builds.

--
Regards,
Igor

Back to the top