Mercurial > hg > thermostat-tools-eclipse
changeset 129:277471cea9af
Generate projects with packaging type `bundle`
Instead of generic `jar`-type projects, create projects with the
package type `bundle`. `bundle`-type projects generate jars that
include OSGi metadata. Without OSGi-metadata, the jars are ignored
by Thermostat.
Depend on a recent version of `maven-bundle-plugin` to generate
OSGi-metadata automatically.
author | Omair Majid <omajid@redhat.com> |
---|---|
date | Thu, 29 May 2014 13:58:41 -0400 |
parents | 89b9cf5db67a |
children | df34d0465d83 |
files | com.redhat.thermostat.tools.eclipse.plugin/src/com/redhat/thermostat/tools/eclipse/plugin/wizards/ProjectCreator.java |
diffstat | 1 files changed, 49 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/com.redhat.thermostat.tools.eclipse.plugin/src/com/redhat/thermostat/tools/eclipse/plugin/wizards/ProjectCreator.java Thu May 22 11:09:30 2014 -0400 +++ b/com.redhat.thermostat.tools.eclipse.plugin/src/com/redhat/thermostat/tools/eclipse/plugin/wizards/ProjectCreator.java Thu May 29 13:58:41 2014 -0400 @@ -47,6 +47,18 @@ private static final String POM_FOOTER = "" + "</project>\n"; + private static final String OSGI_DEPENDENCIES_WITH_VERSION = "" + + " <dependency>\n" + + " <groupId>org.osgi</groupId>\n" + + " <artifactId>org.osgi.core</artifactId>\n" + + " <version>4.3.1</version>\n" + + " </dependency>\n" + + " <dependency>\n" + + " <groupId>org.osgi</groupId>\n" + + " <artifactId>org.osgi.compendium</artifactId>\n" + + " <version>4.3.1</version>\n" + + " </dependency>\n"; + private static final String OSGI_DEPENDENCIES = "" + " <dependency>\n" + " <groupId>org.osgi</groupId>\n" @@ -57,6 +69,20 @@ + " <artifactId>org.osgi.compendium</artifactId>\n" + " </dependency>\n"; + private static final String BUNDLE_PLUGIN_WITH_VERSION = "" + + " <plugin>\n" + + " <groupId>org.apache.felix</groupId>\n" + + " <artifactId>maven-bundle-plugin</artifactId>\n" + + " <version>2.3.7</version>\n" + + " </plugin>\n"; + + private static final String BUNDLE_PLUGIN = "" + + " <plugin>\n" + + " <groupId>org.apache.felix</groupId>\n" + + " <artifactId>maven-bundle-plugin</artifactId>\n" + + " <extensions>true</extensions>\n" + + " </plugin>\n"; + private static final String BUNDLE_ACTIVATOR_NAME = "Activator"; private static final String BUNDLE_ACTIVATOR = "" + "package ${package.name};\n" // ${package.name} is replaced with actual package name @@ -135,18 +161,17 @@ + " <module>../" + this.artifactId + "-distribution</module>\n" + " </modules>\n" + "\n" + + " <build>\n" + + " <pluginManagement>\n" + + " <plugins>\n" + + BUNDLE_PLUGIN_WITH_VERSION + + " </plugins>\n" + + " </pluginManagement>\n" + + " </build>\n" + + "\n" + " <dependencyManagement>\n" + " <dependencies>\n" - + " <dependency>\n" - + " <groupId>org.osgi</groupId>\n" - + " <artifactId>org.osgi.core</artifactId>\n" - + " <version>4.3.1</version>\n" - + " </dependency>\n" - + " <dependency>\n" - + " <groupId>org.osgi</groupId>\n" - + " <artifactId>org.osgi.compendium</artifactId>\n" - + " <version>4.3.1</version>\n" - + " </dependency>\n" + + OSGI_DEPENDENCIES_WITH_VERSION + " </dependencies>\n" + " </dependencyManagement>\n" + POM_FOOTER; @@ -166,7 +191,13 @@ + createParentSection(groupId, parentId, version) + "\n" + " <artifactId>" + artifactId + "</artifactId>\n" - + " <packaging>jar</packaging>\n" + + " <packaging>bundle</packaging>\n" + + "\n" + + " <build>\n" + + " <plugins>\n" + + BUNDLE_PLUGIN + + " </plugins>\n" + + " </build>\n" + "\n" + " <dependencies>\n" + OSGI_DEPENDENCIES @@ -188,7 +219,13 @@ + createParentSection(groupId, parentId, version) + "\n" + " <artifactId>" + artifactId + "</artifactId>\n" - + " <packaging>jar</packaging>\n" + + " <packaging>bundle</packaging>\n" + + "\n" + + " <build>\n" + + " <plugins>\n" + + BUNDLE_PLUGIN + + " </plugins>\n" + + " </build>\n" + "\n" + " <dependencies>\n" + " <dependency>\n"