I am trying to use a shared library, which we use in our Quarkus
applications, also with NiFi.  Specifically I am creating a custom
processor (nar) that will use the shared jar as well as the Quarkus
framework as the component has some Quarkus runtime dependencies.

However when I load the nar it seems to start fine but then apparently
something causes NiFi to stop and then restart, this goes on forever.

2021-06-30 12:16:06,996 WARN [main] org.apache.nifi.bootstrap.RunNiFi
Apache NiFi appears to have died. Restarting...

So my questions are:

1. What is causing NiFi to be terminated?  I have turned on the bootstrap
logging to TRACE but nothing is reported in the logs or console.
2. How to configure logs to show why it stopped?
3. How to package a Quarkus uber jar in a NiFi nar?

Regarding #3 I don't know that this is the cause of the failure but noted
that a nar is effectively a fat jar (has all runtime dependencies).
However so is a Quarkus jar, it is an uber jar that has all the classes of
the entire application in one jar.  Note it does not contain its
dependencies as jars but rather as class files directly.  So when a NiFi
nar is made it has the quarkus uber jar plus it has all the dependencies
that it won't need as all are in the Quarkus jar.

How can I customize the nar to not duplicate things?

Does the nifi-nar-maven-plugin support this sort of customization?

-Dave

Reply via email to