Pergunta

Estou tentando usar o Gollumn Wiki , então posso editar meu GitHub Wiki, mas consigo 'não parece que funcione.

Estou no Ubuntu 11.10, 64 bits.

Eu tentei isso também com Ruby 1.9, também o mesmo erro.

Clonei meu repositório git GitHub Wiki para meu projeto, abri Gollum eeste é o erro que recebi:

NoMethodError em /
método indefinido `novo 'para Redcarpet: Módulo

O rastreamento de pilha completo é:

:public is no longer used to avoid overloading Module#public, use :public_folder instead
from /var/lib/gems/1.8/gems/gollum-1.3.1/bin/../lib/gollum/frontend/app.rb:17
[2011-12-06 15:20:15] INFO  WEBrick 1.3.1
[2011-12-06 15:20:15] INFO  ruby 1.8.7 (2011-06-30) [x86_64-linux]
== Sinatra/1.3.1 has taken the stage on 4567 for development with backup from WEBrick
[2011-12-06 15:20:20] INFO  WEBrick::HTTPServer#start: pid=22017 port=4567 
NoMethodError - undefined method `new' for Redcarpet:Module:
/var/lib/gems/1.8/gems/gollum-1.3.1/lib/gollum/markup.rb:463:in `render'
/var/lib/gems/1.8/gems/gollum-1.3.1/lib/gollum/page.rb:171:in `formatted_data'
/var/lib/gems/1.8/gems/gollum-1.3.1/bin/../lib/gollum/frontend/app.rb:190:in `show_page_or_file'
/var/lib/gems/1.8/gems/gollum-1.3.1/bin/../lib/gollum/frontend/app.rb:42:in `GET /'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:1211:in `call'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:1211:in `compile!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:772:in `[]'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:772:in `route!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:788:in `route_eval'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:772:in `route!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:821:in `process_route'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:819:in `catch'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:819:in `process_route'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:771:in `route!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:770:in `each'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:770:in `route!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:886:in `dispatch!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:706:in `call!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:871:in `invoke'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:871:in `catch'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:871:in `invoke'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:706:in `call!'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:692:in `call'
/var/lib/gems/1.8/gems/rack-protection-1.1.4/lib/rack/protection/xss_header.rb:22:in `call'
/var/lib/gems/1.8/gems/rack-protection-1.1.4/lib/rack/protection/path_traversal.rb:16:in `call'
/var/lib/gems/1.8/gems/rack-protection-1.1.4/lib/rack/protection/json_csrf.rb:17:in `call'
/var/lib/gems/1.8/gems/rack-protection-1.1.4/lib/rack/protection/base.rb:47:in `call'
/var/lib/gems/1.8/gems/rack-protection-1.1.4/lib/rack/protection/xss_header.rb:22:in `call'
/var/lib/gems/1.8/gems/rack-1.3.5/lib/rack/nulllogger.rb:9:in `call'
/var/lib/gems/1.8/gems/rack-1.3.5/lib/rack/head.rb:9:in `call'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/showexceptions.rb:21:in `call'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:1334:in `call'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:1403:in `synchronize'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:1334:in `call'
/var/lib/gems/1.8/gems/rack-1.3.5/lib/rack/handler/webrick.rb:59:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:23:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'
/var/lib/gems/1.8/gems/rack-1.3.5/lib/rack/handler/webrick.rb:13:in `run'
/var/lib/gems/1.8/gems/sinatra-1.3.1/lib/sinatra/base.rb:1295:in `run!'
/var/lib/gems/1.8/gems/gollum-1.3.1/bin/gollum:125
/usr/local/bin/gollum:19:in `load'
/usr/local/bin/gollum:19

Qualquer ajuda seria apreciada.

Foi útil?

Solução

Tente reinstalar o tapete vermelho desta forma:

gem uninstall redcarpet
gem install redcarpet --version=1.17.2

Se estiver usando bundler, coloque seu Gemfile

gem 'redcarpet', '1.17.2'
gem 'gollum'

Outras dicas

Estou tentando usar Gollum como minha documentação para novos projetos e esse problema também me atingiu recentemente.Para resolver isso, isolei as alterações usando o Bundler.Em meu diretório Gollum clonado em minha máquina local, fiz o seguinte:

# Create a Gemfile with the following:
source "http://rubygems.org"
gem 'redcarpet', '1.17.2'
gem 'gollum'

Em seguida, execute bundle install para configurar tudo.Quando estiver pronto para iniciar o servidor gollum, execute bundle exec gollum na linha de comando.

Isso lhe dará um bom servidor gollum isolado usando as gemas que você empacotou especificamente e resolverá o problema discutido em sua pergunta.

Recebi o mesmo erro "método indefinido 'novo' para Redcarpet: Módulo" após executar um bundle update.

Semelhante ao anterior, esta versão 2 da gem instalada junto com a versão 1. Eu poderia ter voltado para a v1 conforme descrito acima, mas como não estou usando um sistema que exigia a primeira geração da gem, euremoveu a versão 1 e foi para a v2. Fácil.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top