自作プラグインでembulk-input-jdbc
のJdbcInputPlugin
を継承したりなんだりしてみようとして試行錯誤した
embulk-input-jdbc
がgem
で配付されているので中の jar ファイルを使うのが面倒だった
正しい方法ではなさそうな気がするけど、build.gladle
を以下のようにして解決した
dependencies {
compile "org.embulk:embulk-core:0.5.0"
provided "org.embulk:embulk-core:0.5.0"
// compile "YOUR_JAR_DEPENDENCY_GROUP:YOUR_JAR_DEPENDENCY_MODULE:YOUR_JAR_DEPENDENCY_VERSION"
gems "rubygems:embulk-input-jdbc:0.3.0"
testCompile "junit:junit:4.+"
}
task loadJdbcInputPlugin(type: Copy, dependsOn: ["jrubyPrepareGems"]) {
from(fileTree("${project.buildDir}/vendor/gems/embulk-input-jdbc-0.3.0/src/main/java/org/embulk/input/"))
into "${project.rootDir}/src/main/java/org/embulk/input/"
}
compileJava.dependsOn << "loadJdbcInputPlugin"
dependencies
にgem
ファイルを含めるにはgems "rubygems:embulk-input-jdbc:0.3.0"
のようにする
compile "rubygems:embulk-input-jdbc:0.3.0"
でもコンパイルは通るけど、どこにファイルが配置されるのかイマイチ不明だった
jrubyPrepareGems
タスクの実行時、build/vendor/
以下にソースファイル等が展開されるようなので、必要なものをsrc/main/java
以下へ、compileJava
時にコピーするようにした
いろいろ教えて下さった @hiroysato さん、ありがとうございました。