私の会社はSBT/Scalaを使用しています。私の目標は、Maven/JavaではなくカスタムNiFiプロセッサを開発することです。私が抱えている問題は、SBTでNARファイルを生成する方法がわからないことです。 NiFiにはnifi-nar-maven-pluginパッケージプラグインがあり、すべてのプロセッサ依存関係をjar(nar)にパッケージ化します。 SBTを使ってNARを構築する方法はありますか?別のビルドシステムを使ってNiFiでカスタムプロセッサを構築することはできますか?
- 脂肪jarファイル(例:https://github.com/sbt/sbt-assembly)を構築:私は考えられてきた
オプション。私はNARのpomファイルを参照してくださいが、実際に何かのために使用されているか、それともメタデータですか? NarUnpacker、NarClassLoaderのようなクラスがありますので、Far jarの動作を妨げるNar形式のものがあるかどうか疑問に思っています。
- プラグインをリバースエンジニアリングし、SBTを作成します。ちょっとした作業かもしれないし、元のプラグインの変更と同期が外れる危険性があります。
- SBTのmavenプラグインの周りにラッパーを構築します。しかし、プラグインがMavenライブラリから構築されて以来、これはうまくいくとは思わない。
- NiFiサブプロジェクトだけをMavenビルドとして残し、SBT親プロジェクトを介して実行します。 (例:http://www.scala-sbt.org/0.13/docs/Process.html)
- mavenを使用するように管理を断念し、納得させる。