JavaScript jvm实现

是否有任何JavaScript jvm实现
如果不是,你能否告诉我为什么它还没有意识到? (可能不可能?)我试图了解创建一个缺席的东西?

我之所以要问的原因是我想创建具有编译function的web浏览器ide,甚至没有在计算机上安装jdk或jre(仅在浏览器中)。

不确定jsJVM有多成熟,但看起来像你会感兴趣的东西。正如页面所说,它是用Javascript编写的JVM。

目前最流行的似乎是Doppio

你可以看看bck2brwsr (又名java.net HTML)

  • 它是一个将Java字节代码转换为JavaScript的VM(Bck2Brwsr虚拟机)
  • 提供基于Java的HTML包装器(HTML通过Java API)

项目的范围不是执行任何现有的Java库。 (见http://wiki.apidesign.org/wiki/Bck2Brwsr )

网上有两个不错的例子:

  • 计算器,提供良好的技术洞察力( http://xelfi.cz/bck2brwsr/
  • 一个很好的太空入侵者演示作为概念certificate(JAYDAY 2013 java峰会页面)

开始使用一个工作示例 (需要Maven和JDK7):

第1步:加载原型

mvn archetype:generate -DarchetypeGroupId=org.apidesign.bck2brwsr \ -DarchetypeArtifactId=bck2brwsr-archetype-html-sample -DarchetypeVersion=0.7.2 \ -DarchetypeRepository=https://maven.java.net/content/repositories/releases/ 

第2步:构建HTML页面和依赖项并打包为ZIP文件

 mvn install # produces bck-1.0-SNAPSHOT-bck2brwsr.zip 

第3步:解压ZIP

 cd target; unzip bck-1.0-SNAPSHOT-bck2brwsr.zip creating: public_html/ creating: public_html/lib/ extracting: public_html/lib/emul-0.7.2-rt.jar extracting: public_html/lib/javaquery.api-0.7.2.jar inflating: public_html/bck2brwsr.js extracting: public_html/bck-1.0-SNAPSHOT.jar inflating: public_html/index.html 

第4步:使用浏览器打开index.html

  1. +脚本似乎也很有趣,作者也可以在基于Web的IDE上工作。

  2. BicaVM可能是另一种选择。

  3. Orto项目可能已经死亡。

使用JavaScript编译Java的一个问题是编译器通常需要知道目标Java最低版本的方法和属性的存在(或不存在)。 要了解这些信息,您需要存储描述目标J2SE的每个类的公共成员的属性或变量。 这代表了很大一部分信息。

很晚的回答,但是对于未来的询问者:自从第一次提出这个问题以来,已经发布了一个新的JavaScript Java JVM实现。 它声称即使没有安装Java也可以实现JVM。

https://www.javapoly.com/