plugins { id "com.jfrog.bintray" version "1.1" id "com.github.jruby-gradle.base" version "0.1.5" id "java" } import com.github.jrubygradle.JRubyExec sourceCompatibility = '1.7' targetCompatibility = '1.7' repositories { mavenCentral() jcenter() } configurations { provided } version = "0.1.0" dependencies { compile "org.embulk:embulk-core:0.4.6" compile "org.apache.commons:commons-compress:1.9" provided "org.embulk:embulk-core:0.4.6" // compile "YOUR_JAR_DEPENDENCY_GROUP:YOUR_JAR_DEPENDENCY_MODULE:YOUR_JAR_DEPENDENCY_VERSION" testCompile "org.jmockit:jmockit:1.15" testCompile "junit:junit:4.+" } task classpath(type: Copy, dependsOn: ["jar"]) { doFirst { file("classpath").deleteDir() } from (configurations.runtime - configurations.provided + files(jar.archivePath)) into "classpath" } clean { delete 'classpath' } task gem(type: JRubyExec, dependsOn: ["build", "gemspec", "classpath"]) { jrubyArgs "-rrubygems/gem_runner", "-eGem::GemRunner.new.run(ARGV)", "build" script "build/gemspec" doLast { ant.move(file: "${project.name}-${project.version}.gem", todir: "pkg") } } task gemspec << { file("build/gemspec").write($/ Gem::Specification.new do |spec| spec.name = "${project.name}" spec.version = "${project.version}" spec.authors = ["hata"] spec.summary = %[Commons Compress encoder plugin for Embulk] spec.description = %[Commons Compress encoder plugin is an Embulk plugin that encodes files using Commons Compress so that any file output plugins can store the files. Search the file output plugins by 'embulk-output file' keywords.] spec.email = ["hiroki.ata@gmail.com"] spec.licenses = ["MIT"] spec.homepage = "https://github.com/hata/embulk-encoder-commons-compress" spec.files = `git ls-files`.split("\n") + Dir["classpath/*.jar"] spec.test_files = spec.files.grep(%r"^(test|spec)/") spec.require_paths = ["lib"] #spec.add_dependency 'YOUR_GEM_DEPENDENCY', ['~> YOUR_GEM_DEPENDENCY_VERSION'] spec.add_development_dependency 'bundler', ['~> 1.0'] spec.add_development_dependency 'rake', ['>= 10.0'] end /$) }