it-swarm.com.de

Phantomjs konnten nicht gefunden werden

Beim Versuch, Phantomjs von Ruby unter Ubuntu zu verwenden, wird folgender Fehler angezeigt:

 Failure/Error: visit root_path
 Cliver::Dependency::NotFound:
   Could not find an executable ["phantomjs"] on your path.
 # ./spec/features/search_spec.rb:17:in `block (2 levels) in <top (required)>'
 # ./spec/support/vcr.rb:23:in `block (3 levels) in <top (required)>'
 # ./spec/support/vcr.rb:23:in `block (2 levels) in <top (required)>'

phantomjs wurde lokal erstellt und zu PATH hinzugefügt. Wie kann ich Ruby dazu bringen, Phantomjs zu finden?

26

Du kannst es auch tun 

$ Sudo apt-get install phantomjs                               

Das sollte Ihrem Pfad automatisch Phantomjs hinzufügen und alles andere tun, damit es korrekt ausgeführt werden kann. Das hat bei mir funktioniert.

30
Matthew

Statt lokal zu bauen, verwenden Sie Homebrew auf Ihrem Mac mit brew install phantomjs und alle Pfade werden danach verlinkt. Ich hatte diesen Fehler selbst, und Sie erhalten die Links kostenlos und können problemlos aktualisieren. 

29
pjammer

Verwenden Sie für Mac Os El Capitan folgenden Befehl: 

npm install -g phantomjs

Der obige Befehl funktioniert nur, wenn Sie npm installiert haben, um npm zu installieren: 

 brew install npm
15
Aamir

zu Gemfile hinzufügen

gem 'phantomjs', :require => 'phantomjs/poltergeist'

oder geben Sie den folgenden Code in spec_helper.rb ein

require 'phantomjs' 
Capybara.register_driver :poltergeist do |app|
    Capybara::Poltergeist::Driver.new(app, :phantomjs => Phantomjs.path)
end

https://github.com/colszowka/phantomjs-gem

8
gayavat

Anscheinend bestand die Lösung darin, Phantomjs nicht nur zum PATH hinzuzufügen, sondern auch Links zu erstellen:

Sudo ln -s /home/myuser/phantomjs/bin/phantomjs /usr/bin/phantomjs
Sudo ln -s /home/myuser/phantomjs/bin/phantomjs /usr/local/bin/phantomjs
Sudo ln -s /home/myuser/phantomjs/bin/phantomjs /usr/local/share/phantomjs

Passen Sie die /home/myuser/phantomjs/bin/phantomjs-Pfade an den Pfad zur Phantomjs-Binärdatei auf Ihrem Computer an.

4

Eine andere mögliche Lösung besteht darin, ausführbare Rechte zur Datei hinzuzufügen:

# download phantomjs
$ curl --output /home/user/.rvm/bin/phantomjs https://s3.amazonaws.com/circle-downloads/phantomjs-2.1.1
# set rights 
$ chmod +x /home/user/.rvm/bin/phantomjs
# check
$ which phantomjs
/home/user/.rvm/bin/phantomjs

Außerdem wird von poltergeist nicht empfohlen, phantomjs von offiziellen Ubuntu-Repos zu verwenden:

Verwenden Sie KEINE Phantomjs aus den offiziellen Ubuntu-Repositorys, da es funktioniert nicht gut mit Poltergeist.

0
hlcs