diff --git a/tools/package/features/BUCK b/tools/package/features/BUCK
new file mode 100644
index 0000000..479d488
--- /dev/null
+++ b/tools/package/features/BUCK
@@ -0,0 +1,166 @@
+osgi_feature (
+  name="onos-thirdparty-base",
+  title="ONOS 3rd party dependencies",
+  required_features = [],
+  included_bundles = [
+    '//lib:atomix',
+    '//lib:commons-lang',
+    '//lib:commons-lang3',
+    '//lib:commons-text',
+    '//lib:commons-configuration',
+    '//lib:guava',
+    '//lib:netty',
+    '//lib:netty-common',
+    '//lib:netty-buffer',
+    '//lib:netty-transport',
+    '//lib:netty-handler',
+    '//lib:netty-codec',
+    '//lib:netty-transport-native-epoll',
+    '//lib:netty-resolver',
+    '//lib:commons-pool',
+    '//lib:commons-math3',
+    '//lib:joda-time',
+    '//lib:metrics-core',
+    '//lib:metrics-json',
+    '//lib:minimal-json',
+    '//lib:kryo',
+    '//lib:reflectasm',
+    '//lib:asm',
+    '//lib:minlog',
+    '//lib:objenesis',
+    '//lib:jackson-core',
+    '//lib:jackson-annotations',
+    '//lib:jackson-databind',
+    '//lib:commons-collections',
+    '//lib:typesafe-config',
+    '//lib:concurrent-trees',
+    '//lib:commons-io',
+    '//lib:jersey-client',
+    '//lib:mapdb',
+    '//lib:bcpkix-jdk15on',
+    '//lib:bcprov-jdk15on',
+    '//lib:commons-jxpath', # FIXME: move xpath lib dependency to the right place
+    '//lib:commons-beanutils', # jxpath dependency
+    '//lib:jdom',  # jxpath dependency
+    '//lib:sigar',
+  ]
+)
+
+osgi_feature (
+  name="onos-thirdparty-web",
+  title="ONOS 3rd party dependencies for web apps",
+  required_features = [ 'war', 'onos-thirdparty-base' ],
+  included_bundles = [
+    '//lib:jersey-common',
+    '//lib:javax.annotation-api',
+    '//lib:javax.ws.rs-api',
+    '//lib:hk2-api',
+    '//lib:hk2-locator',
+    '//lib:hk2-osgi-resource-locator',
+    '//lib:javax.inject',
+    '//lib:jersey-server',
+    '//lib:jersey-hk2',
+    '//lib:aopalliance-repackaged',
+    '//lib:hk2-utils',
+    '//lib:validation-api',
+    '//lib:javassist',
+    '//lib:jersey-container-servlet',
+    '//lib:jersey-container-servlet-core',
+    '//lib:jersey-media-multipart',
+    '//lib:mimepull',
+  ]
+)
+
+osgi_feature (
+  name = 'onos-api',
+  title = 'ONOS services and model API',
+  required_features = ['scr', 'onos-thirdparty-base'],
+  included_bundles =[
+    '//utils/misc:onlab-misc',
+    '//utils/osgi:onlab-osgi',
+    '//core/api:onos-api',
+    '//incubator/api:onos-incubator-api',
+  ]
+)
+
+osgi_feature (
+  name='onos-core',
+  title='ONOS core components',
+  required_features = ['onos-api'],
+  included_bundles = [
+    '//core/net:onos-core-net',
+    '//core/common:onos-core-common',
+    '//core/store/dist:onos-core-dist',
+    '//core/store/primitives:onos-core-primitives',
+    '//core/store/persistence:onos-core-persistence',
+    '//core/store/serializers:onos-core-serializers',
+  ]
+)
+
+osgi_feature (
+  name='onos-incubator',
+  title='ONOS core incubator components',
+  required_features = ['onos-core'],
+  included_bundles = [
+    '//incubator/net:onos-incubator-net',
+    '//incubator/store:onos-incubator-store',
+    '//incubator/rpc:onos-incubator-rpc',
+  ]
+)
+
+osgi_feature (
+  name="onos-rest",
+  title="ONOS REST API components",
+  required_features = ['onos-api', 'onos-thirdparty-web'],
+  included_bundles = [
+    '//utils/rest:onlab-rest',
+    '//web/api:onos-rest',
+  ]
+)
+
+osgi_feature (
+  name = 'onos-gui',
+  title = 'ONOS GUI console components',
+  required_features = ['onos-api', 'onos-thirdparty-web'],
+  included_bundles = [
+    '//lib:jetty-websocket',
+    '//utils/rest:onlab-rest',
+    '//web/gui:onos-gui',
+  ]
+)
+
+osgi_feature (
+  name = 'onos-gui2',
+  title = 'ONOS GUI2 console components',
+  required_features = ['onos-api', 'onos-thirdparty-web'],
+  included_bundles = [
+    '//lib:jetty-websocket',
+    '//utils/rest:onlab-rest',
+    '//web/gui2:onos-gui2',
+  ]
+)
+
+osgi_feature (
+  name = 'onos-cli',
+  title="ONOS admin command console components",
+  required_features = ['onos-api'],
+  included_bundles = [
+    '//cli:onos-cli',
+  ]
+)
+
+osgi_feature (
+  name = 'onos-security',
+  title="Security-Mode ONOS",
+  required_features = ['onos-api'],
+  included_bundles = [
+    '//lib:org.apache.felix.framework.security',
+    '//core/security:onos-security',
+  ]
+)
+
+compile_features(
+  name = 'onos-features',
+  features = FEATURES,
+  maven_coords = 'org.onosproject:onos-features:xml:features:' + ONOS_VERSION,
+)
diff --git a/tools/package/features/BUILD b/tools/package/features/BUILD
new file mode 100644
index 0000000..5443842
--- /dev/null
+++ b/tools/package/features/BUILD
@@ -0,0 +1,188 @@
+load("//tools/build/bazel:osgi_features.bzl", "osgi_feature", "osgi_feature_repo")
+
+osgi_feature(
+    name = "onos-thirdparty-base",
+    description = "ONOS 3rd party dependencies",
+    included_bundles = [
+        "@atomix//jar",
+        "@commons_lang//jar",
+        "@commons_lang3//jar",
+        "@commons_text//jar",
+        "@commons_configuration//jar",
+        "@guava//jar",
+        "@netty//jar",
+        "@netty_common//jar",
+        "@netty_buffer//jar",
+        "@netty_transport//jar",
+        "@netty_handler//jar",
+        "@netty_codec//jar",
+        "@netty_transport_native_epoll//jar",
+        "@netty_resolver//jar",
+        "@commons_pool//jar",
+        "@commons_math3//jar",
+        "@joda_time//jar",
+        "@metrics_core//jar",
+        "@metrics_json//jar",
+        "@minimal_json//jar",
+        "@kryo//jar",
+        "@reflectasm//jar",
+        "@asm//jar",
+        "@minlog//jar",
+        "@objenesis//jar",
+        "@jackson_core//jar",
+        "@jackson_annotations//jar",
+        "@jackson_databind//jar",
+        "@commons_collections//jar",
+        "@typesafe_config//jar",
+        "@concurrent_trees//jar",
+        "@commons_io//jar",
+        "@jersey_client//jar",
+        "@mapdb//jar",
+        "@bcpkix_jdk15on//jar",
+        "@bcprov_jdk15on//jar",
+        "@commons_jxpath//jar",
+        "@commons_beanutils//jar",
+        "@jdom//jar",
+        "@sigar//jar",
+    ],
+    required_features = [],
+)
+
+osgi_feature(
+    name = "onos-thirdparty-web",
+    description = "ONOS 3rd party dependencies for web apps",
+    included_bundles = [
+        "@jersey_common//jar",
+        "@javax_annotation_api//jar",
+        "@javax_ws_rs_api//jar",
+        "@hk2_api//jar",
+        "@hk2_locator//jar",
+        "@hk2_osgi_resource_locator//jar",
+        "@javax_inject//jar",
+        "@jersey_server//jar",
+        "@jersey_hk2//jar",
+        "@aopalliance_repackaged//jar",
+        "@hk2_utils//jar",
+        "@validation_api//jar",
+        "@javassist//jar",
+        "@jersey_container_servlet//jar",
+        "@jersey_container_servlet_core//jar",
+        "@jersey_media_multipart//jar",
+        "@mimepull//jar",
+    ],
+    required_features = [
+        "war",
+        "onos-thirdparty-base",
+    ],
+)
+
+osgi_feature(
+    name = "onos-api",
+    description = "ONOS services and model API",
+    included_bundles = [
+        "//utils/misc:onlab-misc",
+        "//utils/osgi:onlab-osgi",
+        "//core/api:onos-api",
+        "//incubator/api:onos-incubator-api",
+    ],
+    required_features = [
+        "scr",
+        "onos-thirdparty-base",
+    ],
+)
+
+osgi_feature(
+    name = "onos-core",
+    description = "ONOS core components",
+    included_bundles = [
+        "//core/net:onos-core-net",
+        "//core/common:onos-core-common",
+        "//core/store/dist:onos-core-dist",
+        #        "//core/store/primitives:onos-core-primitives",
+        #        "//core/store/persistence:onos-core-persistence",
+        #        "//core/store/serializers:onos-core-serializers",
+    ],
+    required_features = ["onos-api"],
+)
+
+
+FEATURES = [
+    "//tools/package/features:onos-thirdparty-base",
+    "//tools/package/features:onos-thirdparty-web",
+    "//tools/package/features:onos-api",
+    "//tools/package/features:onos-core",
+#    "//tools/package/features:onos-incubator",
+#    "//tools/package/features:onos-rest",
+#    "//tools/package/features:onos-gui",
+#    "//tools/package/features:onos-gui2",
+#    "//tools/package/features:onos-cli",
+#    "//tools/package/features:onos-security",
+]
+
+osgi_feature_repo(
+    name = "onos-features",
+    exported_features = FEATURES,
+    visibility = ["//visibility:public"],
+)
+
+#osgi_feature (
+#  name = "onos-incubator",
+#  description = "ONOS core incubator components",
+#  required_features = ["onos-core"],
+#  included_bundles = [
+#    "//incubator/net:onos-incubator-net",
+#    "//incubator/store:onos-incubator-store",
+#    "//incubator/rpc:onos-incubator-rpc",
+#  ]
+#)
+#
+#osgi_feature (
+#  name = "onos-rest",
+#  description = "ONOS REST API components",
+#  required_features = ["onos-api", "onos-thirdparty-web"],
+#  included_bundles = [
+#    "//utils/rest:onlab-rest",
+#    "//web/api:onos-rest",
+#  ]
+#)
+#
+#osgi_feature (
+#  name = "onos-gui",
+#  description = "ONOS GUI console components",
+#  required_features = ["onos-api", "onos-thirdparty-web"],
+#  included_bundles = [
+#    "//lib:jetty_websocket",
+#    "//utils/rest:onlab-rest",
+#    "//web/gui:onos-gui",
+#  ]
+#)
+#
+#osgi_feature (
+#  name = "onos-gui2",
+#  description = "ONOS GUI2 console components",
+#  required_features = ["onos-api", "onos-thirdparty-web"],
+#  included_bundles = [
+#    "//lib:jetty_websocket",
+#    "//utils/rest:onlab-rest",
+#    "//web/gui2:onos-gui2",
+#  ]
+#)
+#
+#osgi_feature (
+#  name = "onos-cli",
+#  description ="ONOS admin command console components",
+#  required_features = ["onos-api"],
+#  included_bundles = [
+#    "//cli:onos-cli",
+#  ]
+#)
+#
+#osgi_feature (
+#  name = "onos-security",
+#  description ="Security-Mode ONOS",
+#  required_features = ["onos-api"],
+#  included_bundles = [
+#    "//lib:org.apache.felix.framework.security",
+#    "//core/security:onos-security",
+#  ]
+#)
diff --git a/tools/package/features/features.xml b/tools/package/features/features.xml
new file mode 100644
index 0000000..979f8b8
--- /dev/null
+++ b/tools/package/features/features.xml
@@ -0,0 +1,157 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Copyright 2014-present Open Networking Foundation
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
+          name="onos-@FEATURE-VERSION">
+    <repository>mvn:org.apache.karaf.features/standard/3.0.8/xml/features</repository>
+
+    <feature name="onos-thirdparty-base" version="@FEATURE-VERSION"
+             description="ONOS 3rd party dependencies">
+        <bundle>mvn:commons-lang/commons-lang/2.6</bundle>
+        <bundle>mvn:org.apache.commons/commons-lang3/3.5</bundle>
+        <bundle>mvn:commons-configuration/commons-configuration/1.10</bundle>
+        <bundle>mvn:com.google.guava/guava/22.0</bundle>
+        <bundle>mvn:io.netty/netty/3.10.5.Final</bundle>
+        <bundle>mvn:io.netty/netty-common/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-buffer/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-transport/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-handler/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-codec/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-transport-native-epoll/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-resolver/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-codec-http2/4.1.8.Final</bundle>
+        <bundle>mvn:io.netty/netty-codec-http/4.1.8.Final</bundle>
+        <bundle>mvn:commons-pool/commons-pool/1.6</bundle>
+        <bundle>mvn:org.apache.commons/commons-math3/3.6.1</bundle>
+
+        <bundle>mvn:joda-time/joda-time/2.9.3</bundle>
+
+        <bundle>mvn:io.dropwizard.metrics/metrics-core/3.2.2</bundle>
+        <bundle>mvn:io.dropwizard.metrics/metrics-json/3.2.2</bundle>
+        <bundle>mvn:com.eclipsesource.minimal-json/minimal-json/0.9.4</bundle>
+
+        <bundle>mvn:com.esotericsoftware/kryo/4.0.0</bundle>
+        <bundle>mvn:com.esotericsoftware/reflectasm/1.11.3</bundle>
+        <bundle>mvn:org.ow2.asm/asm/5.0.4</bundle>
+        <bundle>mvn:com.esotericsoftware/minlog/1.3.0</bundle>
+        <bundle>mvn:org.objenesis/objenesis/2.2</bundle>
+
+        <bundle>mvn:com.fasterxml.jackson.core/jackson-core/2.8.8</bundle>
+        <bundle>mvn:com.fasterxml.jackson.core/jackson-annotations/2.8.8</bundle>
+        <bundle>mvn:com.fasterxml.jackson.core/jackson-databind/2.8.8</bundle>
+
+        <bundle>mvn:commons-configuration/commons-configuration/1.10</bundle>
+        <bundle>mvn:commons-collections/commons-collections/3.2.2</bundle>
+
+        <bundle>mvn:com.typesafe/config/1.2.1</bundle>
+        <bundle>mvn:com.googlecode.concurrent-trees/concurrent-trees/2.6.0</bundle>
+        <bundle>mvn:commons-io/commons-io/2.4</bundle>
+        <bundle>mvn:io.atomix/atomix/2.0.22</bundle>
+
+        <bundle>mvn:org.glassfish.jersey.core/jersey-client/2.26</bundle>
+
+        <bundle>mvn:org.mapdb/mapdb/1.0.7</bundle>
+    </feature>
+
+    <feature name="onos-thirdparty-web" version="@FEATURE-VERSION"
+             description="ONOS 3rd party dependencies for web apps">
+        <feature>war</feature>
+        <feature>onos-thirdparty-base</feature>
+        <!-- Bundles for jersey-common 2.x -->
+        <bundle>mvn:org.glassfish.jersey.core/jersey-common/2.26</bundle>
+        <bundle>mvn:javax.annotation/javax.annotation-api/1.2</bundle>
+        <bundle>mvn:javax.ws.rs/javax.ws.rs-api/2.1</bundle>
+        <bundle>mvn:org.glassfish.hk2/hk2-api/2.5.0-b42</bundle>
+        <bundle>mvn:org.glassfish.hk2/hk2-locator/2.5.0-b42</bundle>
+        <bundle>mvn:org.glassfish.hk2/osgi-resource-locator/1.0.1</bundle>
+        <bundle>mvn:org.glassfish.hk2.external/javax.inject/2.5.0-b42</bundle>
+        <bundle>mvn:org.glassfish.jersey.inject/jersey-hk2/2.26</bundle>
+        <!-- Bundles for jersey-server -->
+        <bundle>mvn:org.glassfish.jersey.core/jersey-server/2.26</bundle>
+        <bundle>mvn:org.glassfish.hk2.external/aopalliance-repackaged/2.5.0-b42</bundle>
+        <bundle>mvn:org.glassfish.hk2/hk2-utils/2.5.0-b42</bundle>
+        <bundle>mvn:javax.validation/validation-api/1.1.0.Final</bundle>
+        <bundle>mvn:org.javassist/javassist/3.22.0-GA</bundle>
+        <!-- Bundles for jersey-servlet -->
+        <bundle>mvn:org.glassfish.jersey.containers/jersey-container-servlet/2.26</bundle>
+        <bundle>mvn:org.glassfish.jersey.containers/jersey-container-servlet-core/2.26</bundle>
+        <!-- Bundles for jersey-media-multipart -->
+        <bundle>mvn:org.glassfish.jersey.media/jersey-media-multipart/2.26</bundle>
+        <bundle>mvn:org.jvnet.mimepull/mimepull/1.9.6</bundle>
+    </feature>
+
+    <feature name="onos-api" version="@FEATURE-VERSION"
+             description="ONOS services and model API">
+        <feature>scr</feature>
+        <feature>onos-thirdparty-base</feature>
+        <bundle>mvn:org.onosproject/onlab-misc/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onlab-osgi/@ONOS-VERSION</bundle>
+
+        <bundle>mvn:org.onosproject/onos-api/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-incubator-api/@ONOS-VERSION</bundle>
+    </feature>
+
+    <feature name="onos-core" version="@FEATURE-VERSION"
+             description="ONOS core components">
+        <feature>onos-api</feature>
+        <bundle>mvn:org.onosproject/onos-core-net/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-core-common/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-core-dist/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-core-primitives/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-core-persistence/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-core-serializers/@ONOS-VERSION</bundle>
+    </feature>
+
+    <feature name="onos-incubator" version="@FEATURE-VERSION"
+             description="ONOS core incubator components">
+        <feature>onos-core</feature>
+        <bundle>mvn:org.onosproject/onos-incubator-net/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-incubator-core/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-incubator-store/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-incubator-rpc/@ONOS-VERSION</bundle>
+    </feature>
+
+    <feature name="onos-rest" version="@FEATURE-VERSION"
+             description="ONOS REST API components">
+        <feature>onos-api</feature>
+        <feature>onos-thirdparty-web</feature>
+        <bundle>mvn:org.onosproject/onlab-rest/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-rest/@ONOS-VERSION</bundle>
+    </feature>
+
+    <feature name="onos-gui" version="@FEATURE-VERSION"
+             description="ONOS GUI console components">
+        <feature>onos-api</feature>
+        <feature>onos-thirdparty-web</feature>
+        <bundle>mvn:org.eclipse.jetty/jetty-websocket/8.1.19.v20160209</bundle>
+        <bundle>mvn:org.onosproject/onlab-rest/@ONOS-VERSION</bundle>
+        <bundle>mvn:org.onosproject/onos-gui/@ONOS-VERSION</bundle>
+    </feature>
+
+    <feature name="onos-cli" version="@FEATURE-VERSION"
+             description="ONOS admin command console components">
+        <feature>onos-api</feature>
+        <bundle>mvn:org.onosproject/onos-cli/@ONOS-VERSION</bundle>
+    </feature>
+
+    <feature name="onos-security" version="@FEATURE-VERSION"
+             description="Security-Mode ONOS">
+        <feature>onos-api</feature>
+        <bundle>mvn:org.onosproject/org.apache.felix.framework.security/2.2.0.onos</bundle>
+        <bundle>mvn:org.onosproject/onos-security/@ONOS-VERSION</bundle>
+    </feature>
+
+</features>
diff --git a/tools/package/features/pom.xml b/tools/package/features/pom.xml
new file mode 100644
index 0000000..18dd3c4
--- /dev/null
+++ b/tools/package/features/pom.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright 2014-present Open Networking Foundation
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.onosproject</groupId>
+        <artifactId>onos</artifactId>
+        <version>1.14.0-SNAPSHOT</version>
+        <relativePath>../../../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>onos-features</artifactId>
+    <packaging>pom</packaging>
+
+    <description>ONOS Apache Karaf feature definitions</description>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>com.google.code.maven-replacer-plugin</groupId>
+                <artifactId>replacer</artifactId>
+                <version>1.5.3</version>
+                <executions>
+                    <execution>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>replace</goal>
+                        </goals>
+                    </execution>
+                </executions>
+                <configuration>
+                    <file>${pom.basedir}/features.xml</file>
+                    <outputFile>${pom.basedir}/target/features.xml</outputFile>
+                    <replacements>
+                        <replacement>
+                            <token>@ONOS-VERSION</token>
+                            <value>${project.version}</value>
+                        </replacement>
+                        <replacement>
+                            <token>@FEATURE-VERSION</token>
+                            <value>${project.version}</value>
+                        </replacement>
+                    </replacements>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <version>1.9</version>
+                <executions>
+                    <execution>
+                        <id>attach-artifacts</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>attach-artifact</goal>
+                        </goals>
+                        <configuration>
+                            <artifacts>
+                                <artifact>
+                                    <file>target/features.xml</file>
+                                    <type>xml</type>
+                                    <classifier>features</classifier>
+                                </artifact>
+                            </artifacts>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>
