2011-02-11 17 views
9

Tenía una aplicación en funcionamiento, agregué Nokogiri, para analizar algunos archivos XML, funciona perfectamente localmente.Heroku app se bloquea, los registros dicen "No se cargó ningún archivo - nokogiri (LoadError)"

Mi Gemfile incluye: gem 'nokogiri'

me encontré bundle install y verifiqué mi Gemfile.lock incluye DEPENDENCIES ... nokogiri

En mi clase controlador añadí (aún no ha thinki pero tuvo que consiguió un error localmente si didnt):

class MydealController < ApplicationController 
    require 'rubygems' 
    require 'open-uri' 
    require 'nokogiri' 

cuando uso mi navegador para obtener la url en MydealController que utiliza Nokogiri doc = Nokogiri::XML(getresult) accidentes Heroku.

heroku logs muestra este error No such file to load -- nokogiri (LoadError)

En cuanto a lo que sucede cuando git push heroku no veo nokogiri en la lista de muchas muchas joyas que se instalan. Heroku dice que el push estuvo bien, pero nokogiri no aparece en la lista y recibo el error antes mencionado ...

+0

¿No agregó Nokogiri al 'Gemfile' de su aplicación? –

+2

segunda línea de mi texto "Mi Gemfile incluye: gem 'nokogiri'" – jpwynn

+0

Vi una publicación (sin respuestas) en algún blog sugiriendo que podría haber algún problema donde estoy usando Windows localmente, hice un paquete de instalación localmente, y luego heroku barfs en la joya por alguna razón. parece inverosímil sin embargo. – jpwynn

Respuesta

1

Parece que cuando se utiliza Windows Gemfile.lock contendrá versión de nokogiri joya específica para las ventanas, solución es quitar Gemfile.lock y empujar a heroku.

Más información sobre este tema here

0

Acabo de tener el mismo problema: tienes que ejecutar bundle install para agregarlo al Gemfile.lock que heroku busca para encontrar Dependencias desinstaladas.

+1

sí, lo hice y comprobé que estaba en gemfile.lock, como se menciona en las preguntas. parece ser un problema con mi entorno de desarrollo siendo Windows. suspiro. – jpwynn

1

Su misión si decide aceptarla.

asegurar:

  1. nokogiri está en Gemfile.lock
  2. Gemfile.lock se ha comprometido a git
  3. se presiona el compromiso que tiene nokogiri en Gemfile.lock a Heroku

¡Buena suerte! Este mensaje se autodestruirá en 10 segundos ...

0

intenta quitar require 'nokogiri' desde el controlador.

Funciona para mí.

Cuestiones relacionadas