我发现我们的构建管理服务器有些奇怪(我们正在使用 Jenkins CI)。项目使用 Maven(版本 3.0.3)构建
其他环境细节:
Rails 3.1.3
Jruby 1.6.7
Ruby 1.9.2
Bundler 1.0.22 for rails gem management
warbler 1.3.5
我们有一个 bash 脚本,它运行捆绑安装、assets:precompile(rake 任务)和 rake war 任务:
jruby -S bundle install
jruby -S bundle exec rake assets:precompile
jruby -S bundle exec rake war RAILS_ENV=production
该pom.xml
项目的文件有一个名为的任务package
,它基本上运行上面的 bash 脚本,以及其他一些构建后清理的东西。
我的问题:
如果我运行,mvn package
我会收到以下错误:
[INFO] ..... Previous output of maven stuff .....
[INFO] + jruby -S bundle exec rake war RAILS_ENV=production
[INFO] Bundler::GemNotFound: Could not find rake-0.9.2.2 in any of the sources
[INFO] materialize at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/spec_set.rb:88
[INFO] map! at org/jruby/RubyArray.java:2371
[INFO] materialize at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/spec_set.rb:82
[INFO] specs at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/definition.rb:107
[INFO] specs_for at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/definition.rb:152
[INFO] requested_specs at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/definition.rb:141
[INFO] requested_specs at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/environment.rb:23
[INFO] setup at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/runtime.rb:11
[INFO] setup at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler.rb:110
[INFO] (root) at /mnt/data_drive/opt/jruby-1.6.7/lib/ruby/gems/1.8/gems/bundler-1.0.22/lib/bundler/setup.rb:17
但是,如果我只是运行,在项目文件夹的命令行中:
jruby -S bundle exec rake war RAILS_ENV=production
(这实际上是它似乎在抱怨的命令) - 一切都成功了,它构建了 WAR 没有问题,找到所有的 gem 文件,等等。
我想知道是否有人对问题可能有任何建议。我已经做了一个jruby -S gem install rake -v '0.9.2.2'
,而且,为了以防万一,一个gem install rake -v '0.9.2.2'
- 但是它没有任何区别。
任何建议表示赞赏:) 谢谢!