1

我发现我们的构建管理服务器有些奇怪(我们正在使用 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'- 但是它没有任何区别。

任何建议表示赞赏:) 谢谢!

4

0 回答 0