我想在V8之上运行Javascript控制台。我该怎么做?
答案 0 :(得分:114)
V8易于构建,并且没有来自Mozilla独立Javascript解释器的Java VM开销。幸运的是,V8附带了用于构建控制台的代码。以下是如何建立这个:
$> 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
现在,我们有一个名为v8-shell
的独立二进制文件。
运行控制台:
$> ./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()
从命令行执行Javascript:
$> ./v8-shell -e 'print("10*10 = " + 10*10)' 10*10 = 100
帮助中记录了更多功能:
$> ./v8-shell --help Usage: ...
答案 1 :(得分:58)
要构建开发人员控制台,而不是示例“shell”玩具应用程序,请将以下命令复制粘贴到终端。
sudo apt-get install subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8
这些指令适用于具有“通用”内核的Ubuntu / Debian。对于其他发行版,您需要使用您可用的任何包工具替换apt-get命令。在64位系统上,您可能需要添加arch=x64
。 console=readline
选项启用readline系统,使其感觉更像标准shell。
此处提供更完整的文档: http://code.google.com/apis/v8/build.html
注意:
另请参阅:Building v8 with GYP
答案 2 :(得分:43)
如何使用node.js通过命令行运行V8 Javascript?
node.js使用v8作为引擎,并在其上添加了许多功能。
例如,如果您安装了Homebrew,则在Mac OSX上,只需发出:
$ brew install node
$ node
>
答案 3 :(得分:23)
在Mac OS X上,请务必安装brew
。然后只需运行命令(sudo) brew install v8
,这取决于你的机器,这可能需要一些时间。要启动V8控制台,只需运行v8
- Voilà!
提示:要退出控制台,只需运行quit()
,不要忘记括号!
答案 4 :(得分:5)
我认为这可能已经改变了。我read the manual并按照以下方式构建v8:
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
将export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release
添加到我的.bashrc
moose@pc08 ~ $ source ~/.bashrc
moose@pc08 ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in
(使用来自aditsu的javascript和来自Google Code Jam的A-small-practice.in)
答案 5 :(得分:4)
遵循系统的构建说明(Google's V8 Build Docs);
[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)
我在.bash_profile中创建了一个别名,以方便调用shell。
alias v8='/Volumes/Dev/GitHub/v8/out/native/shell'
在CLI中键入v8(在新的终端或shell中 - 重新加载bash配置文件)会生成v8 shell。命令提示符下的JavaScript! :)
答案 6 :(得分:3)
如果您使用ArchLinux,可以使用pacman -S v8
进行安装。
然后使用d8
在shell中启动它。
享受吧。
答案 7 :(得分:2)
如果您计划嵌入V8,那么请务必构建并使用“d8”。
另一方面,如果您不打算扩展V8或将其视为可选项, 然后只使用Node.JS.不要打扰纯V8。
Node.js拥有真正丰富的I / O,扩展,库(如Perl CPAN,Python Eggs,Ruby Gems)和社区。 p>
答案 8 :(得分:1)
如果您想使用 v8 引擎或其任何版本运行javascript源代码,则可以使用jsvu命令行工具。它由Google工程师开发和维护,此外,它还提供安装除 v8 之外的其他JavaScript引擎的功能,例如 spidermonkey , chakracore , javascriptcore 和 xs 。