我想在V8上運行Javascript控制檯。我該怎麼做呢?運行V8 Javascript Engine Standalone
回答
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: ...
要構建開發者控制檯,而不是示例的'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系統,使其感覺更像一個標準外殼。
更完整的文檔在這裏: http://code.google.com/apis/v8/build.html
注:
我不得不添加'arch = x64'來構建64位ubuntu。 – projectshave
console = readline選項有什麼作用? – Hugh
@Hugh:它啓用readline系統;這是允許你使用向上的箭頭來獲得前面的命令,以及其他細節。 – bukzor
如果您使用ArchLinux,您可以使用pacman -S v8
來安裝它。 然後使用d8
在您的shell中啓動它。 享受它。
這似乎是在AUR上,所以不能與pacman一起安裝。 – Colliot
如果你打算嵌入V8,然後通過各種手段建立它與「D8」玩。
另一方面,如果您不打算擴展V8或將其視爲可選項,則可以使用Node.JS.不要打擾純V8。 Node.js具有真正豐富的I/O,擴展,庫(如Perl CPAN,Python Eggs,Ruby Gems)和社區。
您不需要使用node.js,它只是一個包裝和額外的依賴關係。 – b01
在按照您的系統的構建說明(Google's V8 Build Docs)之後;
[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)
我在.bash_profile中創建了一個別名,以方便調用shell。在CLI(在一個新的終端或shell - 重裝你的bash配置文件)
alias v8='/Volumes/Dev/GitHub/v8/out/native/shell'
打字V8產生了V8外殼。 JavaScript在命令提示符處! :)
我認爲這可能已經改變。我read the manual和建設V8這樣的:
[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
添加export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release
我的.bashrc
[email protected] ~ $ source ~/.bashrc
[email protected] ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in
(與谷歌編程挑戰賽從aditsu和A-small-practice.in的JavaScript)
充滿迴應的頁面和您最不重視的內容包含我需要的最終建議。 –
- 1. Run Rails Engine standalone
- 2. 在Standalone JavaScript程序上運行API
- 3. 我可以在iPhone上運行JavaScript運行時(如v8)嗎?
- 4. linux - 如何運行selenium-server-standalone?
- 5. websocket-rails standalone模式運行heroku
- 6. Javascript,V8,resources
- 7. 錯誤,同時運行V8的示例代碼JavaScript引擎
- 8. 如何多次運行V8評估?
- 9. v8中的運行時函數
- 10. 在C#/ Javascript.net/V8上運行Less.js
- 11. 使用V8進行Javascript單元測試
- 12. Hazelcast Standalone
- 13. standalone asp.net page
- 14. 修改Chrome提供的V8 JavaScript引擎
- 15. Tomcat Server Standalone Exe
- 16. Java EE vs Standalone
- 17. V8中的Javascript等價物?
- 18. V8的JavaScript標準庫
- 19. V8 Javascript堆轉儲架構
- 20. 的JavaScript編譯在V8
- 21. 擴展V8 JavaScript引擎
- 22. V8如何將v8 :: Persistent <v8 :: Primitive>轉換爲v8 :: Primitive?
- 23. 用CScript運行Javascript?
- 24. Arduino Standalone
- 25. macos standalone python
- 26. 在Ubuntu服務器上運行selenium standalone npm包
- 27. .NET Core Standalone構建將無法在MacOS上運行10.12
- 28. selenium-server-standalone-2.0rc2.jar在服務器上運行,如何開始?
- 29. 在生產環境中運行Mule Standalone與Tomcat
- 30. eclipse rcp standalone view - 如何在運行時顯示隱藏標題
謝謝爲小費和明確的指示。我必須在ubuntu 10.04下的'g ++'命令中添加'-lpthread'選項。 – intuited
在Ubuntu上,我的scons失敗了,但是運行sudo apt-get install libc6-dev-i386解決了這個問題。 –
,如果你在x86_64上執行:'scons arch = x64',直到其固定在主幹上 http://code.google.com/p/v8/issues/detail?id=429#c1 – EdH