1

我已经在我的本地机器上安装了 diaspora rails 应用程序https://github.com/diaspora/diaspora 。然后我安装了铁路图生成器http://railroad.rubyforge.org/#download

按照网站上的说明,我构建了一个 rake 任务来运行它,但是当我运行它时似乎出现了两个单独的错误。

第一个错误是没有 dot 命令:

sh: dot: command not found

我在没有 rake 的情况下运行时也遇到的第二个错误:

Seans-MacBook-Pro:diaspora sean$ railroad -o models.dot -M 
/Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-    0.5.0/lib/railroad/app_diagram.rb:54:in `disable_stdout': uninitialized constant     AppDiagram::PLATFORM (NameError)

当我运行 rake 时:

Seans-MacBook-Pro:diaspora sean$ rake doc:diagrams
WARNING: Nokogiri was built against LibXML version 2.7.3, but has dynamically loaded 2.7.8
railroad -i -l -a -m -M | dot -Tsvg | sed 's/font-size:14.00/font-size:11.00/g' >  doc/models.svg
sh: dot: command not found
/Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-    0.5.0/lib/railroad/app_diagram.rb:54:in `disable_stdout': uninitialized constant    AppDiagram::PLATFORM (NameError)
from /Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-  0.5.0/lib/railroad/app_diagram.rb:72:in `load_environment'
from /Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-0.5.0/lib/railroad/app_diagram.rb:18:in `initialize'
from /Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-0.5.0/lib/railroad/models_diagram.rb:14:in `initialize'
from /Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-0.5.0/bin/railroad:36:in `new'
from /Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-0.5.0/bin/railroad:36:in `<top (required)>'

我还根据此链接修改了 railroad/app_diagram.rb http://rubyforge.org/tracker/index.php?func=detail&aid=26418&group_id=3383&atid=12998

现在我收到此错误:

Seans-MacBook-Pro:diaspora sean$ rake doc:diagrams
WARNING: Nokogiri was built against LibXML version 2.7.3, but has dynamically loaded 2.7.8
railroad -i -l -a -m -M | dot -Tsvg | sed 's/font-size:14.00/font-size:11.00/g' >   doc/models.svg
dyld: Library not loaded: /usr/lib/libltdl.7.dylib
  Referenced from: /usr/local/bin/dot
  Reason: image not found
  Error loading application environment.
 (Are you running railroad on the aplication's root directory?)

/Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-0.5.0/lib/railroad/app_diagram.rb:73:in `require': cannot load such file --    config/environment (LoadError)
from /Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspora/gems/railroad-  0.5.0/lib/railroad/app_diagram.rb:73:in `load_environment'
from /Users/sean/.rvm/gems/ruby-1.9.3-p194@diaspo

我从项目根目录运行,并且文件存在。我还尝试将 .rb 添加到 app_diagram.rb 文件的行中,但没有任何变化。

Seans-MacBook-Pro:diaspora sean$ pwd
/Users/sean/Dropbox/rails/diaspora

Seans-MacBook-Pro:diaspora sean$ head -73 /Users/sean/.rvm/gems/ruby-1.9.3-    p194@diaspora/gems/railroad-0.5.0/lib/railroad/app_diagram.rb
 | tail -1
      require "config/environment"

Seans-MacBook-Pro:diaspora sean$ ls -l config/environment.rb
-rw-r--r--  1 sean  staff  1481 Jul 19 14:25 config/environment.rb
4

2 回答 2

4

这是您需要的程序:http: //www.graphviz.org/Download_macos.php。Dot 是绘制图形所需的程序。

于 2012-10-27T08:01:36.700 回答
0

好的,我想我在另一个 SO 问题下找到了答案。铁路不工作。给我问题,即 /railroad-0.5.0/lib/railroad/app_diagram.rb:54:in `disable_stdout': uninitialized constant

它不再维护,已被https://github.com/preston/railroady#readme取代

于 2012-10-27T08:29:37.523 回答