Uruchamianie Samodzielnego Silnika Javascript V8

Chcę uruchomić konsolę Javascript na V8. Jak to zrobić?

 120
Author: Manuel, 2009-11-26

8 answers

V8 jest łatwy w budowie i nie jest dostarczany z maszynami wirtualnymi Java z samodzielnego interpretera Javascript Mozilli. Na szczęście V8 dostarcza kod do budowy konsoli. Oto jak to zbudować:

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

Teraz mamy samodzielny binarny o nazwie v8-shell.

Uruchamianie konsoli:

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

Wykonywanie Javascript z linii poleceń:

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

Wiele innych funkcji jest udokumentowanych w Pomocy:

$> ./v8-shell --help
Usage:
...
 111
Author: Georg Schölly,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-11-26 09:37:51

Aby zbudować konsolę programistyczną, a nie przykładową aplikację 'shell', skopiuj i wklej poniższe polecenia do swojego terminala.

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

Te instrukcje będą działać dla Ubuntu / Debiana z" generycznym " jądrem. W przypadku innych dystrybucji, konieczne będzie zastąpienie polecenia apt-get dowolnym dostępnym narzędziem pakietowym. W systemach 64-bitowych może być konieczne dodanie arch=x64. Opcja console=readline umożliwia systemowireadline , aby poczuł się nieco bardziej jak standardowa powłoka.

Więcej kompletnej dokumentacji tutaj: http://code.google.com/apis/v8/build.html


Uwaga:

Tutaj wpisz opis obrazka

Zobacz także: Budynek v8 z GYP

 58
Author: bukzor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-13 17:00:21

Jak o uruchomieniu Javascript V8 poprzez wiersz poleceń przy użyciu węzeł.js ?

Węzeł.js używa v8 jako silnika i dodaje wiele funkcjonalności.


Na przykład na Mac OSX jeśli masz Homebrew zainstalowany, po prostu problem:

    $ brew install node
    $ node
    > 
 43
Author: tle,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-20 19:56:40

Na Mac OS X upewnij się, że brew zainstalowany. Następnie uruchom polecenie (sudo) brew install v8, w zależności od komputera może to zająć trochę czasu. Aby uruchomić konsolę V8, po prostu uruchom v8 - Voilà!

Wskazówka: aby zamknąć konsolę, po prostu uruchom quit() i nie zapomnij o nawiasach!

 23
Author: Mario Uher,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-04-21 09:46:59

Po wykonaniu instrukcji budowania (Google ' s V8 Build Docs ) dla Twojego systemu;

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

Stworzyłem alias w moim .bash_profile ułatwiające wywołanie powłoki.

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

Wpisanie v8 w CLI (w nowym terminalu lub powłoce -- w celu przeładowania profilu bash) daje powłokę V8. JavaScript w wierszu polecenia! :)

 4
Author: Joe Johnson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-07-11 23:18:29

Myślę, że to się mogło zmienić. I przeczytaj instrukcję i zbuduj v8 tak:

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

Dodano export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release do mojej .bashrc

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

(z javascript z aditsu i A-small-practice.in z Google Code Jam)

 4
Author: Martin Thoma,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-26 18:18:52

Jeśli używasz ArchLinux, możesz użyć pacman -S v8, aby go zainstalować. Następnie użyj d8, aby uruchomić go w powłoce. Smacznego.

 3
Author: alswl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-13 06:29:06

Jeśli planujesz osadzić V8, to zdecydowanie zbuduj go i baw się z "d8".

Jeśli z drugiej strony nie planujesz rozszerzyć V8 lub potraktować go jako opcjonalny, następnie po prostu użyj Node.JS. Nie przejmuj się czystym V8.

Node.js ma naprawdę bogate wejścia / Wyjścia, rozszerzenia, biblioteki (takie jak Perl CPAN, Python Eggs, Ruby Gems) i społeczność.

 1
Author: A R,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-16 00:31:23