web-dev-qa-db-fra.com

Exécution autonome du moteur Javascript V8

Je souhaite exécuter une console Javascript au-dessus de V8. Comment puis-je faire cela?

124
Manuel

La V8 est facile à construire et ne s'accompagne pas de la surcharge Java VM de l'interpréteur Javascript autonome de Mozilla. Heureusement, le V8 est livré avec un code pour la construction d'une console. Voici comment construire ceci:

 $> svn co http://v8.googlecode.com/svn/trunk v8-trunk 
 ... 
 $> cd v8-trunk 
 $ > scons 
 $> g ++ ./samples/Shell.cc -o v8-Shell -I comprennent libv8.a 

Nous avons maintenant un binaire autonome appelé v8-Shell.

Lancer la console:

 $> ./v8-Shell 
 V8 version 2.0.2 
> var x = 10; 
> x 
 10 
> fonction foo (x) {return x * x; } 
> foo 
 fonction foo (x) {retour x * x; } 
> quit () 

Exécuter Javascript à partir de la ligne de commande:

 $> ./v8-Shell -e 'print ("10 * 10 =" + 10 * 10)' 
 10 * 10 = 100 

De nombreuses autres fonctionnalités sont décrites dans l'aide:

 $> ./v8-Shell --help 
 Utilisation: 
 ... 
114
Georg Schölly

Pour construire la console du développeur, plutôt que l'exemple d'application jouet 'Shell', copiez-collez les commandes ci-dessous sur votre terminal.

Sudo apt-get install Subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8

Ces instructions fonctionneront pour Ubuntu/Debian avec un noyau "générique". Pour les autres distributions, vous devrez remplacer la commande apt-get par l’outil de paquetage dont vous disposez. Sur les systèmes 64 bits, vous devrez peut-être ajouter Arch=x64. L'option console=readline Permet au système readline de le faire ressembler un peu plus à un shell standard.

Documentation plus complète ici: http://code.google.com/apis/v8/build.html


Remarque:

enter image description here

Voir aussi: Building v8 with GYP

58
bukzor

Que diriez-vous d'exécuter V8 Javascript via la ligne de commande en utilisant node.js ?

node.js utilise la version 8 comme moteur et ajoute de nombreuses fonctionnalités.


Par exemple, sur Mac OSX, si vous avez Homebrew installé, tapez simplement:

    $ brew install node
    $ node
    > 
43
Tan Le

Sous Mac OS X, assurez-vous que brew est installé. Ensuite, exécutez simplement la commande (Sudo) brew install v8, Cela peut prendre un certain temps en fonction de votre ordinateur. Pour démarrer la console V8, lancez simplement v8 - Voilà!

Astuce: Pour quitter la console, exécutez simplement quit() et ne oubliez pas les parenthèses!

23
Mario Uher

Je pense que cela pourrait avoir changé. Je lisez le manuel et construisez la v8 comme ceci:

moose@pc08$ svn co http://v8.googlecode.com/svn/trunk v8-trunk
moose@pc08$ cd v8-trunk
moose@pc08$ make dependencies
moose@pc08$ make ia32.release

ajoutée export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release à mon .bashrc

moose@pc08 ~ $ source ~/.bashrc
moose@pc08 ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in

(Avec javascript de adits et A-small-practice.in de Google Code Jam)

5
Martin Thoma

Après avoir suivi les instructions de construction ( Google Build Docs de Google V8) pour votre système;

[v8 directory]$ cd out/native
[v8 directory]$ ./Shell (sample Shell)
[v8 directory]$ ./d8 (console: dumb)

J'ai créé un alias dans mon fichier .bash_profile pour faciliter l'appel du shell.

alias v8='/Volumes/Dev/GitHub/v8/out/native/Shell'

Taper v8 au niveau de la CLI (dans un nouveau terminal ou shell - pour recharger votre profil bash) génère le shell v8. JavaScript à l'invite de commande! :)

4
Joe Johnson

Si vous utilisez ArchLinux, vous pouvez utiliser pacman -S v8 pour l'installer. Ensuite, utilisez d8 pour le démarrer dans votre shell. Profitez-en.

3
alswl

Si vous envisagez d'intégrer V8, alors construisez-le et jouez avec "d8".

Si, par contre, vous ne prévoyez pas d'étendre la version 8 ou de la traiter comme une option, utilisez simplement Node.JS. Ne vous embêtez pas avec du V8 pur.

Node.js possède des entrées/sorties, des bibliothèques (comme Perl CPAN, Python Eggs), Ruby Gems)] et une communauté vraiment riches.

2
A R

Si vous souhaitez exécuter votre code source javascript à l'aide du moteur v8 ou de toute version de celui-ci, vous pouvez utiliser le jsv = outil en ligne de commande. Développé et mis à jour par les ingénieurs de Google, il offre en outre la possibilité d’installer d’autres moteurs javascript que v8 , tels que spidermonkey , chakracore , javascriptcore et xs .

1
sgeorgiou