example/Rakefile
# frozen_string_literal: true
require 'rspec/core/rake_task'
require 'jars/classpath'
require 'rake/javaextensiontask'
require 'jars/installer'
task :install_jars do
Jars::Installer.new.vendor_jars
end
desc 'Compiles extension and run specs'
task default: %i[compile spec]
spec = eval File.read('example.gemspec') # rubocop:disable Security/Eval
desc 'compile src/main/java/** into lib/example.jar'
Rake::JavaExtensionTask.new('example', spec) do |ext|
ext.classpath = Jars::Classpath.new.classpath_string
ext.source_version = '1.7'
ext.target_version = '1.7'
ext.ext_dir = 'src/main/java'
end
require 'rubygems/package_task'
Gem::PackageTask.new(spec) do
desc 'Pack gem'
task package: %i[install_jars compile]
end
desc 'Run specs'
RSpec::Core::RakeTask.new