2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

embulk-input-jdbc を自作プラグインで利用する

Last updated at Posted at 2015-03-04

自作プラグインでembulk-input-jdbcJdbcInputPluginを継承したりなんだりしてみようとして試行錯誤した

embulk-input-jdbcgemで配付されているので中の 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"

dependenciesgemファイルを含めるにはgems "rubygems:embulk-input-jdbc:0.3.0"のようにする
compile "rubygems:embulk-input-jdbc:0.3.0"でもコンパイルは通るけど、どこにファイルが配置されるのかイマイチ不明だった
jrubyPrepareGemsタスクの実行時、build/vendor/以下にソースファイル等が展開されるようなので、必要なものをsrc/main/java以下へ、compileJava時にコピーするようにした

いろいろ教えて下さった @hiroysato さん、ありがとうございました。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?