...
- Remove the <parent>...</parent> from the bundle's root pom, or replace it with another desired parent
Add the nar plugin to bundle's root pom (ensure the latest version of the nar plugin is being used):
<build>
<plugins>
<plugin>
<groupId>org.apache.nifi</groupId>
<artifactId>nifi-nar-maven-plugin</artifactId>
<version>1.0.1-incubating</version>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
- Specify the necessary dependency versions in the bundle's processors pom. This is required because the default behavior is for the dependencies to inherit their versions through the nifi-nar-bundle parent, so with a different parent these versions will have to be explicitly set. In addition these dependencies should be changed to provided since they will be provided by NiFi.
Common Dependencies
NiFi provides a mechanism to share common functionality through the concept of ControllerServices. A ControllerService is typically composed of the following:
...
The nifi-standard-services module contains the shared APIs that can be leveraged. Browsing this module can provide the groupId, artifactId, and version of the various APIs.
Deployment
The NAR produced from building the processor bundle can be deployed to NiFi by copying the NAR to the NiFi lib directory and restarting NiFi. If you increment the version of your bundle/NAR, be sure to remove the older version from the NiFi lib directory to avoid running two versions of the same artifact.