[英]Java Library to generate JavaScript Code
我需要從Java程序內部生成JavaScript(ECMAScript)代碼。 為此,我正在尋找類似JavaPoet的東西,但是將JavaScript作為輸出。
我不能使用其中一種將另一種語言轉換為JavaScript的編譯器(例如,GWT不能解決問題),也不能使用從語法樹生成JavaScript的工具(僅當存在幫助構建該語法樹的庫時)。
像已經提到的JavaPoet之類的東西將是答案,因為它在內存使用和代碼大小方面的占用空間都非常小。
如果可能,生成的JavaScript代碼的目標是Java / JSR 223(Nashorn)。
要指定要求:JavaPoet使用此代碼
MethodSpec main = MethodSpec.methodBuilder("main")
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
.returns(void.class)
.addParameter(String[].class, "args")
.addStatement("$T.out.println($S)", System.class, "Hello, JavaPoet!")
.build();
TypeSpec helloWorld = TypeSpec.classBuilder("HelloWorld")
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
.addMethod(main)
.build();
JavaFile javaFile = JavaFile.builder("com.example.helloworld", helloWorld)
.build();
javaFile.writeTo(System.out);
創建此Java代碼
package com.example.helloworld;
public final class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, JavaPoet!");
}
}
(我已經從JavaPoet項目網站復制了該示例。)
我想使用類似的方法來創建JavaScript代碼。
就我目前所知,StringBuilder實際上最接近此要求。 首先生成Java以將其轉換為JavaScript應該可以,但是對我來說真的很奇怪-就是全部,但並不是真正的輕量級。 與首先生成Kotlin或Ceylon代碼,然后將其轉換為JavaScript相同。
我知道您不希望使用編譯器,但是由於似乎沒有想要的javascript生成器,因此輕量級的Java-js編譯器可以完成此工作。
如前所述,嘗試使用javapoet生成一些Java,然后使輸出通過jsweet
Transpiler,有一個在線沙箱可用於查看輸出,然后再確定是否是最佳選擇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.