Warum nicht "rails s" arbeiten aus dem app-Verzeichnis?
Ich bin in meinem app-Ordner, aber der Befehl rails s
funktioniert nicht. Ich Las schon ein paar Beiträge auf Stack Overflow, und die meisten von Ihnen scheinen von Benutzern, die nicht in Ihrem app-Verzeichnis.
Zusätzlich baute ich noch ein paar andere apps. Ich überprüfte diese, und die Rails server funktioniert für alle dieser apps. Das ist das einzige, wo ich kann nicht ankommen es zu starten.
Ausgabe von which rails
:
/Users/jmcrist/.rvm/gems/ruby-2.0.0-p247/bin/rails
Ausgabe von rails s
:
MacBook-Pro:first_app jmcrist$ rails s
Usage:
rails new APP_PATH [options]
Options:
-r, [--ruby=PATH] # Path to the Ruby binary of your choice
# Default: /Users/jmcrist/.rvm/rubies/ruby-2.0.0-p247/bin/ruby
-b, [--builder=BUILDER] # Path to a application builder (can be a filesystem path or URL)
-m, [--template=TEMPLATE] # Path to an application template (can be a filesystem path or URL)
[--skip-gemfile] # Don't create a Gemfile
[--skip-bundle] # Don't run bundle install
-G, [--skip-git] # Skip Git ignores and keeps
-O, [--skip-active-record] # Skip Active Record files
-S, [--skip-sprockets] # Skip Sprockets files
-d, [--database=DATABASE] # Preconfigure for selected database (options: mysql/oracle/postgresql/sqlite3/frontbase/ibm_db/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc)
# Default: sqlite3
-j, [--javascript=JAVASCRIPT] # Preconfigure for selected JavaScript library
# Default: jquery
-J, [--skip-javascript] # Skip JavaScript files
[--dev] # Setup the application with Gemfile pointing to your Rails checkout
[--edge] # Setup the application with Gemfile pointing to Rails repository
-T, [--skip-test-unit] # Skip Test::Unit files
[--old-style-hash] # Force using old style hash (:foo => 'bar') on Ruby >= 1.9
Runtime options:
-f, [--force] # Overwrite files that already exist
-p, [--pretend] # Run but do not make any changes
-q, [--quiet] # Suppress status output
-s, [--skip] # Skip files that already exist
Rails options:
-h, [--help] # Show this help message and quit
-v, [--version] # Show Rails version number and quit
Description:
The 'rails new' command creates a new Rails application with a default
directory structure and configuration at the path you specify.
You can specify extra command-line arguments to be used every time
'rails new' runs in the .railsrc configuration file in your home directory.
Note that the arguments specified in the .railsrc file don't affect the
defaults values shown above in this help message.
Example:
rails new ~/Code/Ruby/weblog
This generates a skeletal Rails installation in ~/Code/Ruby/weblog.
See the README in the newly created application to get going.
Arbeite ich durch Hartl Rails Tutorial, und er macht schon ein paar änderungen an der gemfile. Ich Frage mich, ob das vielleicht die Ursache sein?
source 'https://rubygems.org'
gem 'rails', '3.2.13'
group :development do
gem 'sqlite3', '1.3.5'
end
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '3.2.5'
gem 'coffee-rails', '3.2.2'
gem 'uglifier', '1.2.3'
end
gem 'jquery-rails', '2.0.2'
group :production do
gem 'pg', '0.12.2'
end
funktioniert der Befehl rails server arbeiten? EDIT~ auf der Suche nach anderen ähnlichen Fragen, die in SO, es könnte sein, weil Sie nicht installiert oder aktualisiert Ihre Edelsteine, versuchen Sie es zu tun bundle installieren oder bundle-update als auch
Was ist die Ausgabe von
Althaf: Danke für dein feedback. Ich lief bundle installieren, dann lief 'Schienen' s wieder. Ich erhielt die gleiche Fehlermeldung.
tut rails server arbeiten.
Was ist die Ausgabe von
pwd
von der Kommandozeile aus?/Users/jmcrist/rails_projects/first_app
Althaf: Danke für dein feedback. Ich lief bundle installieren, dann lief 'Schienen' s wieder. Ich erhielt die gleiche Fehlermeldung.
tut rails server arbeiten.
InformationsquelleAutor jmcrist | 2013-07-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Er scheint zu denken, Sie sind nicht in einer rails-Verzeichnis (Ausgabe ist nämlich die einzige gültige Art der Verwendung von Schienen ist mit
rails new
).Je nach Ihrer version, Schienen identifiziert das anders. Auf 3.2, es prüft, ob eine Datei auf
script/rails
. Jetzt, 4.0 veröffentlicht wurde, sieht es für entwederscript/rails
oderbin/rails
(https://github.com/rails/rails/blob/207fa5c11ddf1cfd696f0eeb07d6466aae9d451e/railties/lib/rails/app_rails_loader.rb#L6)Vermutlich können Sie dies umgehen, indem man die Datei
rails
in Ihremscript
- Verzeichnis (wenn Sie nicht über einescript
Verzeichnis ist, erstellen Sie im Stammverzeichnis der app):Natürlich, es lohnt sich zu Fragen, warum Sie nicht über diese Datei in den ersten Platz. Könnte sich lohnen, machen Sie sicher, dass Ihre Schienen ist die version, die Sie wollen, werden unter Verwendung der ersten (
rails -v
wenn die version neuer ist, diese post wird Ihnen zeigen, wie erstellen Sie die neue app mit der älteren version).Danke!!! Die app, die ich mit angefangen habe ich als Rails 4 app, aber ich landete Herabstufung. Die
bin/rails
Ordner wurde deshalb fehlen, ich benutze pow, so dass das problem der unsichtbar war, bis ich wollte mit der Konsole. War meinen Kopf kratzen, Umbau rvm gemsets und allerlei, bis ich dies sah!Danke!!! Diese den Tag gerettet.
Als rails-Neuling habe ich gerade gelöscht Ordner "scripts". Nach dem hinzufügen, es funktioniert wie ein Charme. Natürlich.
InformationsquelleAutor Joshua Cheek
Mögliche Gründe:
bin
Verzeichnis kann mich leer, versuchen zu laufenrake rails:update:bin
(für schiene 4) oderrails app:update:bin
(Rails 5)spring binstub -all
Diese restaurierte es für mich.Ich hatte sank die Verzeichnisse im inneren bin, denken Sie daran, dass Sie auf git
Arbeitete für mich. Danke!
Ich bin mit Schienen 4.2.4 und für mich gearbeitet
Es war eigentlich
rake app:update:bin
, arbeitete für die Schienen 5.1.3 app, mit dem ich arbeite, nichtrails app:update:bin
. Ansonsten, funktioniert Super. Danke!!!InformationsquelleAutor 0x4a6f4672
Alle oben genannten Antworten waren mir nicht helfen. Was mein problem gelöst für
Rails 4
wurde auf Befehl ausführen im root-Verzeichnis meiner Anwendung:Danach läuft
rails s
war wie erwartet ausgeführt.InformationsquelleAutor Aleks
Haben Sie wahrscheinlich nicht gebündelt Ihre Edelsteine noch:
...Your bundle is complete! Gems in the group production were not installed. Use 'bundle show [gemname]' to see where a bundled gem is installed. MacBook-Pro:first_app jmcrist$ rails s Usage: rails new APP_PATH [options]...
ich habe das gleiche problem wie OP. bundle ist nicht im Pfad noch.
InformationsquelleAutor zeantsoi
Hatte ich dieses problem, brauchte ein paar Minuten, um zu erkennen, dass ich vergessen hatte, zum ändern von active Ruby-version mit chruby. Verschiedene Ruby-impliziert eine unterschiedliche Rails-version, die sich für die entsprechende Datei in einen anderen Ordner.
InformationsquelleAutor GFonte
Überprüfen Sie zuerst mit Ihrem Pfad und dann
Wenn immer noch nicht funktioniert, geben Sie
InformationsquelleAutor Ajay
Wenn Sie
rvm
oderrbenv
zum Beispiel, dass mehrere ruby-Versionen, vielleicht Ihr Standard -rails
version für das jeweiligeruby
version ist anders als das Projekt, das Sie versuchen, auszuführen, und es ist daher nicht in der Lage, zu erkennen, Ihre Anwendung.Sicherstellen, dass Sie mit der rechten
rails
version können Sie vergleichen Sie beide Ergebnisse. Dies ist, was ich habe:zu
In diesem Fall können Sie die Standard -
rails
version und verwenden Sie dann:Installieren oder bestimmte
rails gem
sehrruby
version mit:Und dann bekommen Sie arbeiten mit den weniger verbose-Befehl:
Ich hoffe, das wird hilfreich für andere Leute in der gleichen situation!
InformationsquelleAutor fagiani