我尝试从一个简单的 ruby 样本制作一个 .JAR。在 MRI 和 jRuby 中,我可以毫无问题地运行它,但是当我尝试对项目进行 warble 时,我在运行 JAR 文件时出现错误。
Errno::ENOENT: No such file or directory - configuration.yml
configuration.yml 文件不在项目文件夹中,因为它需要可编辑,因此不应包含在 JAR 中,最佳路径是相对于 jar,以便 YML 文件与 JAR 文件位于同一文件夹中. 那么我该怎么做呢?
我的 bin\sample.rb
require 'yaml'
@conf = YAML::load_file "c:/test/configuration.yml"
#@conf = YAML::load_file "c:\\test\\configuration.yml"
puts @conf['username']
我的 c:\test\configuration.yml
username: test
我的 .gemspec 文件
Gem::Specification.new do |spec|
spec.require_paths << '.'
}
我的配置\warble.rb
Warbler::Config.new do |config|
config.jar_name = "sample"
end
我使用“warble jar -trace”发出颤音并且没有错误我使用 jruby-1.7.4 和 warbler-1.3.8。