QUESTIONカフカコネクタ - Packacking瓶
私はMavenのプロではないと私はカフカコネクタをパッケージ化しようとして捕まってしまいました。すべてカフカ固有のjarは
- どちらのあなたは、コネクタ+すべての依存関係のjarファイルが含まれているjarファイルとフォルダを作成:あり、それをパッケージ化するための2つのオプションがあります(また、カフカ固有のjarファイルがなくても前提としていますが、ドキュメントでは明示的ではありません)。
私はconfluent webpageの文書に従っています。パッケージしようとしているコネクタはthis one on githubです。
gitでリポジトリをクローンした後、私が試したのは、次のとおりですmvn clean package
。しかしこれは、mvn
キャッシュ(~/.m2/repository/
)の依存関係を持つ元のプロジェクトの単一のjarファイルを作成するようです。
Googleは脂肪の作り方についてのリンクも持っていますが、私はfat jarから除外するjarを指定する必要があります。
plugin.path=/shared_win_files
そしてls -al /shared_win_files
contai:/etc/kafka/connect-standalone.properties
に次の行が含まれて
connect-standalone /etc/kafka/connect-standalone.properties /etc/kafka/connect-cdc-mssql-source.properties
を:私は実行している今
おかげ
UPDATE NS、以下:
kafka-connect-cdc-mssql-0.0.1-SNAPSHOT.jar
そしてjar tvf kafka-connect-cdc-mssql-0.0.1-SNAPSHOT.jar
には、次のものが含まれています
6996 Thu Sep 07 14:47:24 BST 2017 com/github/jcustenborder/kafka/connect/cdc/mssql/MsSqlSourceConnector.class
MsSqlSourceConnector.class
は基本的にConnector
を実装し、ここthis classです。
しかし、私は上記のコマンドでコネクターを実行しようとすると、私はエラー
Failed to find any class that implements Connector and which name matches com.github.jcustenborder.kafka.connect.cdc.mssql.MsSqlSourceConnector
を取得するには、使用可能なすべてのプラグインとの大規模なリストが得られますが、鉱山があるではありません。
SOLUTION
だから私は、jarファイルをパッケージ化する方法Konstantineの答えを追いました。残りの問題はをKafkaConnect
に指定するときは注意が必要です。
あなたはこのようにfat jar
を置くことができ、次のいずれか
/abc/fatjar.jar
それとも、abc
で別のフォルダを作成し、このようにそのフォルダに関連するすべてのjarファイルを配置する必要があります。同様に
/abd/my-connector-a/connector.jar
/abd/my-connector-a/connector-dependency.jar
...
私の場合、別のプラグインとしてjarを扱っていました。
質問を更新しました。パッケージ化されたジャーを使用しようとすると、別のエラーに遭遇しました:/ – eddyP23
ありがとうございます。私は調整されたままになります、私はそれが簡素化されることを望みます。 – eddyP23