2009-11-26 25 views

Trả lời

110

V8 dễ xây dựng và không đi kèm với chi phí máy ảo Java từ trình thông dịch Javascript độc lập của Mozilla. May mắn thay, V8 có mã để xây dựng một giao diện điều khiển. Đây là cách để tạo điều này:

 
$> 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 

Bây giờ, chúng tôi có một nhị phân độc lập được gọi là v8-shell.

Chạy giao diện điều khiển:

 
$> ./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() 

Thi Javascript từ dòng lệnh:

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

Nhiều tính năng hơn được diễn tả trong sự giúp đỡ:

 
$> ./v8-shell --help 
Usage: 
... 
+9

Cảm ơn cho mẹo và hướng dẫn rõ ràng. Tôi đã phải thêm tùy chọn '-lpthread' vào lệnh' g ++' trong ubuntu 10.04. – intuited

+1

scons không thành công cho tôi trên Ubuntu, nhưng chạy sudo apt-get install libc6-dev-i386 giải quyết điều đó. –

+2

và nếu bạn trên x86_64 thực hiện: 'scons arch = x64' cho đến khi nó được cố định trong thân cây http://code.google.com/p/v8/issues/detail?id=429#c1 – EdH

57

Để xây dựng các nhà phát triển giao diện điều khiển , chứ không phải ứng dụng đồ chơi 'vỏ' ví dụ, sao chép-dán các lệnh dưới đây vào thiết bị đầu cuối của bạn.

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

Hướng dẫn này sẽ hoạt động đối với Ubuntu/Debian có hạt nhân "chung". Đối với các bản phân phối khác, bạn sẽ cần phải thay thế lệnh apt-get bằng bất kỳ công cụ gói nào bạn có sẵn. Trên các hệ thống 64 bit, bạn có thể cần phải thêm arch=x64. Các tùy chọn console=readline cho phép hệ thống readline, để làm cho nó cảm thấy một chút giống như một vỏ tiêu chuẩn.

hoàn Nhiều tài liệu ở đây: http://code.google.com/apis/v8/build.html


Lưu ý:

enter image description here

Xem thêm: Building v8 with GYP

+9

Tôi đã thêm 'arch = x64' để xây dựng trên 64bit ubuntu. – projectshave

+0

Tùy chọn giao diện điều khiển = readline làm gì? – Hugh

+0

@Hugh: Nó cho phép hệ thống readline; đây là những gì cho phép bạn sử dụng mũi tên lên để có được lệnh trước đó, trong số các niceties khác. – bukzor

22

Trên Mac OS X chắc chắn có brew cài đặt. Sau đó, chỉ cần chạy lệnh (sudo) brew install v8, tùy thuộc vào máy của bạn, quá trình này có thể mất chút thời gian. Để bắt đầu bảng điều khiển V8, chỉ cần chạy v8 - Voilà!

Mẹo: Để thoát khỏi bảng điều khiển, chỉ cần chạy quit() và không quên dấu ngoặc đơn!

+1

Hoặc chỉ cần nhấn 'Ctrl-D' để thoát :) – Dogbert

+0

Hoặc 'Ctrl-C' để tiêu diệt nó –

+0

Bạn có thể tự xây dựng v8 và nó đủ đơn giản, bằng cách sử dụng bia là cách quá cồng kềnh. – b01

3

Nếu bạn sử dụng ArchLinux, bạn có thể sử dụng pacman -S v8 để cài đặt. Sau đó sử dụng d8 để bắt đầu nó trong trình bao của bạn. Hãy tận hưởng nó.

+0

Có vẻ như trên AUR nên không thể cài đặt với pacman. – Colliot

41

Làm thế nào để chạy V8 Javascript qua dòng lệnh bằng cách sử dụng node.js?

node.js sử dụng v8 làm công cụ của nó và thêm nhiều chức năng lên trên nó.


Ví dụ trên Mac OSX nếu bạn có Homebrew cài đặt, chỉ cần phát hành:

$ brew install node 
    $ node 
    > 
+1

IMHO node.js là tiêu chuẩn defacto mới khi nói đến bảng điều khiển JavaScript. Nó sử dụng v8, và có lẽ là lựa chọn tốt nhất để sử dụng cho việc này. – Tracker1

1

Nếu bạn đang lập kế hoạch để nhúng V8, sau đó bằng mọi cách xây dựng nó và chơi với "d8".

Nếu mặt khác, bạn không có ý định mở rộng V8 hoặc coi nó là tùy chọn, sau đó chỉ cần sử dụng Node.JS. Đừng bận tâm với V8 thuần túy.

Node.js có các I/O, thư viện mở rộng, thư viện thực sự phong phú (như Perl CPAN, Python Egg, Ruby Gems) và cộng đồng.

+0

Bạn không cần phải sử dụng node.js, nó chỉ là một wrapper và phụ thuộc thêm. – b01

4

Sau khi làm theo hướng dẫn tạo (Google's V8 Build Docs) cho hệ thống của bạn;

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

Tôi đã tạo bí danh trong .bash_profile để tạo điều kiện gọi trình bao.

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

Nhập v8 tại CLI (trong một Thiết bị đầu cuối mới hoặc vỏ - để tải lại hồ sơ bash) sẽ sinh ra vỏ v8. JavaScript tại dấu nhắc lệnh! :)

4

Tôi nghĩ điều này có thể đã thay đổi. Tôi read the manual và xây dựng v8 như thế này:

[email protected]$ svn co http://v8.googlecode.com/svn/trunk v8-trunk 
[email protected]$ cd v8-trunk 
[email protected]$ make dependencies 
[email protected]$ make ia32.release 

thêm export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release để .bashrc của tôi

[email protected] ~ $ source ~/.bashrc 
[email protected] ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in 

(Với javascript từ aditsu và A-small-practice.in từ Google Code Jam)

+2

Một trang đầy đủ các câu trả lời và của bạn, ít được coi nhất, chứa lời khuyên cuối cùng tôi cần. –

Các vấn đề liên quan