Syntax error on line 17, col 2


#1

Tengo un problema a la hora de levantar el servidor de cualquier
aplicacion. Por ejemplo la aplicacion “Recetario”, cuando quiero
ejecutarlo con el siguiente comando D:\rails\recetario>ruby
script\server, me da el siguiente error

D:\rails\recetario>ruby script\server
=> Booting WEBrick…
d:/ruby/lib/ruby/1.8/yaml.rb:133:in load': syntax error on line 17, col 2: host: localhost’ (ArgumentError)
from d:/ruby/lib/ruby/1.8/yaml.rb:133:in load' from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:459:indatabase_configuration’
from
d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:181:in
initialize_database' from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:84:inprocess’
from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:42:in
send' from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:42:inrun’
from ./script/…/config/…/config/environment.rb:13
from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
gem_original_require' ... 7 levels... from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:ingem_original_require’
from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
require' from d:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:inrequire’
from script/server:3

POR FAVOR ALGUIEN ME PUEDE AYUDAR A RESOLVER MI PROBLEMA??


#2

Hola Ana,

ejecutarlo con el siguiente comando D:\rails\recetario>ruby
script\server, me da el siguiente error

d:/ruby/lib/ruby/1.8/yaml.rb:133:in load': syntax error on line 17, col 2: host: localhost’ (ArgumentError)
Los ficheros .yaml son un poco tiquismiquis. Ya podría ser que tu
problema sea que tienes tabuladores en el fichero de configuración. Te
recomiendo que elimines todos los tabs que tengas en el fichero
database.yml y los cambies por espacios. Con un poco de suerte, se
arregla así lo que te pasa.

Saludos,

javier ramirez

Estamos de estreno… si necesitas llevar el control de tus gastos
visita http://www.gastosgem.com !!Es gratis!!


#3

Gracias javier

Pero trate de hacerlo y ahora me sale este error

D:\rails\recetario>ruby script\server
=> Booting WEBrick…
d:/ruby/lib/ruby/1.8/yaml.rb:133:in load': syntax error on line 14, col 0:database:recetario’ (ArgumentError)
from d:/ruby/lib/ruby/1.8/yaml.rb:133:in load' from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:459:indatabase_configuration’
from
d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:181:in
initialize_database' from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:84:inprocess’
from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:42:in
send' from d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/initializer.rb:42:inrun’
from ./script/…/config/…/config/environment.rb:13
from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
gem_original_require' ... 7 levels... from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:ingem_original_require’
from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
require' from d:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:inrequire’
from script/server:3


#4

Hola Ana,

Como decía Javier, lo que comentas tiene toda la pinta de ser un
problema con el formato de tu config/database.yml

Es muy importante que sigas el formato recomendado, indentando
correctamente los parámetros (ya sea con espacios o con tabuladores,
¡pero no con ambos!):

test:
adapter: mysql
database: project_test
username: user_db
password: pwd_db
host: localhost
encoding: utf8

Por lo que he leído en tu primer mensaje parece que tu database.yml
tenía esta pinta:

test:
adapter: mysql
database: project_test
username: user_db
password: pwd_db
host: localhost
encoding: utf8

Y el mensaje que acabas de enviar indica que tienes el parámetro
database en la columna 0, es decir que tu database.yml es parecido a
este:

test:
adapter: mysql
database: project_test
username: user_db
password: pwd_db
host: localhost
encoding: utf8

¿Has revisado que sigues el formato correcto? En ese caso, ¿podrías
enviar el contenido de ese archivo a la lista? Quizá así podamos
ayudarte un poco más a solucionar el problema.

Saludos,
Raul M.

Ana Anavso
escribió:> Gracias javier


#5

Ana Anavso escribió:

Bueno si lo modifique un poco pero ya lo deje a como estaba…

Ajá, ¿y funciona? Deberías poder modificar los valores de los parámetros
sin problemas, siempre que no cambies la indentación de las líneas
originales.

Lo que
veo muy extraño es que en un principio la aplicacion si corria y podia
ver la minima cosa que habia hecho en ella, pero luego me tiro ese error
al tratar de hacerlo de nuevo y desde alli no he podido hacer nada…
Porque si se pudo una vez no se puede seguir usando??? :S

Si al modificarlo cambiaste la indentación original, intercambiaste
algún tabulador por espacios o viceversa ese archivo dejará de ser
legible por el parser yaml y Rails no podrá leerlo correctamente.

Saludos,
Raúl Murciano


#6

ok gracias seguro eso fue lo que paso… voy a intentar copiarlo de otro
que ya probe que sirve y voy a poner los valores de mi base de datos
para ver si funciona…


#7

Tengo otra consulta:
Que pasa si un server esta funcionando y se cierra de pronto???.. es
que esto lo hice y luego al querer correr de nuevo la aplicacion me dio
el siguiente error

D:\rails\super>ruby script\server
=> Booting WEBrick…
=> Rails application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2007-04-23 16:39:35] INFO WEBrick 1.3.1
[2007-04-23 16:39:35] INFO ruby 1.8.5 (2006-08-25) [i386-mswin32]
[2007-04-23 16:39:35] WARN TCPServer Error: Bad file descriptor -
bind(2)
d:/ruby/lib/ruby/1.8/webrick/utils.rb:73:in initialize': Bad file descriptor - bind(2) (Errno::EBADF) from d:/ruby/lib/ruby/1.8/webrick/utils.rb:73:innew’
from d:/ruby/lib/ruby/1.8/webrick/utils.rb:73:in create_listeners' from d:/ruby/lib/ruby/1.8/webrick/utils.rb:70:ineach’
from d:/ruby/lib/ruby/1.8/webrick/utils.rb:70:in create_listeners' from d:/ruby/lib/ruby/1.8/webrick/server.rb:75:inlisten’
from d:/ruby/lib/ruby/1.8/webrick/server.rb:63:in initialize' from d:/ruby/lib/ruby/1.8/webrick/httpserver.rb:24:ininitialize’
from
d:/ruby/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/webrick_server.rb:59:in
new' ... 6 levels... from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:ingem_original_require’
from d:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
require' from d:/ruby/lib/ruby/gems/1.8/gems/activesupport-1.3.1/lib/active_support/dependencies.rb:147:inrequire’
from script/server:3

Sera que al hacerlo se puede estropear algo???


#8

Bueno si lo modifique un poco pero ya lo deje a como estaba… Lo que
veo muy extraño es que en un principio la aplicacion si corria y podia
ver la minima cosa que habia hecho en ella, pero luego me tiro ese error
al tratar de hacerlo de nuevo y desde alli no he podido hacer nada…
Porque si se pudo una vez no se puede seguir usando??? :S