<dependencies>
<dependency>
<groupId>org.webjars.npm</groupId>
<artifactId>@types/react</artifactId>
</dependency>
</dependencies>
groovy
dependencies {
}
jsx
import React from 'react';
function HelloWorld() {
return <h1>Hello World!</h1>;
}
export default HelloWorld;
import javax.script.*;
import org.webjars.npm.*;
import org.webjars.npm.internal.*;
import org.webjars.npm.glob.*;
import org.webjars.npm.moment.*;
public class ReactApp {
public static void main(String[] args) throws Exception {
ScriptEngineManager sem = new ScriptEngineManager();
ScriptEngine nashorn = sem.getEngineByName("nashorn");
NpmResolvers.useNpmSystem(true);
nashorn.eval("var React = require('react')");
String componentCode = "var HelloWorld = require('./HelloWorld.jsx');"
+ "var ReactApp = React.createFactory(HelloWorld);"
+ "var renderedComponent = React.renderToString(ReactApp({}));"
+ "print(renderedComponent);";
nashorn.eval(componentCode);
}
}
mvn clean install
gradle build