I am running the latest snapshot build as of a couple of days ago and starting SD mode with
Running CodeServer with parameters: [-noprecompile, -port, 9876, -sourceLevel, 1.8, -bindAddress, 127.0.0.1, -launcherDir, /Users/paul/Library/Caches/IntelliJIdea15/gwt/gwt_react.da4c73b3/gwt_react.284d7c82/run/www, -logLevel, INFO, -generateJsInteropExports, -style, OBFUSCATED, com.ocs.react.React] I changed the Class to the following as suggested but it still doesn't work public class JSFunction extends JavaScriptObject { protected JSFunction() {}; } @JsType(namespace = JsPackage.GLOBAL, name="CustomComponent") public class CustomComponent { // 1) Still Just returns undefined @JsProperty(namespace = JsPackage.GLOBAL) public static native JSFunction getCustomComponent(); // 2) Still crashes compiler with internal error public static native JSFunction constructor() /*-{ return @com.ocs.react.client.CustomComponent::new(*); }-*/; // 3) Still crashes compiler with internal error public static native JSFunction constructor(String qualifiedJsTypeName) /*-{ var cur = $wnd; var parts = namespace.split('.'); for (var part; parts.length && (part = parts.shift());) { cur = cur[part]; } return cur; }-*/; } The exception is [ERROR] An internal compiler exception occurred com.google.gwt.dev.jjs.InternalCompilerException: Unexpected error during visit. at com.google.gwt.dev.jjs.ast.JVisitor.translateException(JVisitor.java:111) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:149) at com.google.gwt.dev.jjs.ast.JVisitor.acceptImmutable(JVisitor.java:154) at com.google.gwt.dev.jjs.ast.JMethodCall.visitChildren(JMethodCall.java:266) at com.google.gwt.dev.jjs.ast.JMethodCall.traverse(JMethodCall.java:257) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:146) at com.google.gwt.dev.jjs.ast.JVisitor.acceptImmutable(JVisitor.java:154) at com.google.gwt.dev.jjs.ast.JMethodCall.visitChildren(JMethodCall.java:266) at com.google.gwt.dev.jjs.ast.JMethodCall.traverse(JMethodCall.java:257) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:146) at com.google.gwt.dev.jjs.ast.JVisitor.acceptImmutable(JVisitor.java:154) at com.google.gwt.dev.jjs.ast.JMethodCall.visitChildren(JMethodCall.java:266) at com.google.gwt.dev.jjs.ast.JMethodCall.traverse(JMethodCall.java:257) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:127) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:122) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:118) at com.google.gwt.dev.jjs.ast.JDeclarationStatement.traverse(JDeclarationStatement.java:49) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:146) at com.google.gwt.dev.jjs.ast.JVisitor.acceptWithInsertRemove(JVisitor.java:168) at com.google.gwt.dev.jjs.ast.JBlock.traverse(JBlock.java:92) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:127) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:139) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:135) at com.google.gwt.dev.jjs.ast.JMethodBody.traverse(JMethodBody.java:83) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:127) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:122) at com.google.gwt.dev.jjs.ast.JMethod.visitChildren(JMethod.java:788) at com.google.gwt.dev.jjs.ast.JMethod.traverse(JMethod.java:780) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:146) at com.google.gwt.dev.jjs.ast.JVisitor.acceptWithInsertRemoveImmutable(JVisitor.java:172) at com.google.gwt.dev.jjs.ast.JClassType.traverse(JClassType.java:147) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:127) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:122) at com.google.gwt.dev.jjs.ast.JProgram.visitModuleTypes(JProgram.java:1284) at com.google.gwt.dev.jjs.ast.JProgram.traverse(JProgram.java:1249) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:127) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:122) at com.google.gwt.dev.jjs.impl.ControlFlowRecorder.execImpl(ControlFlowRecorder.java:162) at com.google.gwt.dev.jjs.impl.ControlFlowRecorder.exec(ControlFlowRecorder.java:49) at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.maybeRecordReferencesAndControlFlow(JavaToJavaScriptCompiler.java:474) at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.compilePermutation(JavaToJavaScriptCompiler.java:352) at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.compilePermutation(JavaToJavaScriptCompiler.java:272) at com.google.gwt.dev.CompilePerms.compile(CompilePerms.java:198) at com.google.gwt.dev.ThreadedPermutationWorkerFactory$ThreadedPermutationWorker.compile(ThreadedPermutationWorkerFactory.java:50) at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:74) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.NullPointerException at com.google.gwt.dev.jjs.ast.JMethod.getJsniSignature(JMethod.java:618) at com.google.gwt.dev.jjs.impl.ControlFlowRecorder.computeName(ControlFlowRecorder.java:53) at com.google.gwt.dev.jjs.impl.ControlFlowRecorder.processMethodCall(ControlFlowRecorder.java:212) at com.google.gwt.dev.jjs.impl.ControlFlowRecorder.visit(ControlFlowRecorder.java:157) at com.google.gwt.dev.jjs.ast.JMethodCall.traverse(JMethodCall.java:256) at com.google.gwt.dev.jjs.ast.JVisitor.accept(JVisitor.java:146) ... 44 more [ERROR] at ReactMain.java(38): CustomComponent.getCustomComponent() com.google.gwt.dev.jjs.ast.JMethodCall [ERROR] at ReactMain.java(38): React.createElement(CustomComponent.getCustomComponent(), null) com.google.gwt.dev.jjs.ast.JMethodCall [ERROR] at ReactMain.java(36): React.createElement("div", null, React.createElement(funcComp, fProps), React.createElement(CustomComponent.getCustomComponent(), null)) com.google.gwt.dev.jjs.ast.JMethodCall [ERROR] at ReactMain.java(35): React.createElement("div", (new HTMLProps())._defaultValue("ss")._accept("y"), React.createElement("div", null, React.createElement(funcComp, fProps), React.createElement(CustomComponent.getCustomComponent(), null)), React.createElement(customClassicComponent, null), React.createElement("div", null, "An example")) com.google.gwt.dev.jjs.ast.JMethodCall [ERROR] at ReactMain.java(34): DOMElement div = React.createElement("div", (new HTMLProps())._defaultValue("ss")._accept("y"), React.createElement("div", null, React.createElement(funcComp, fProps), React.createElement(CustomComponent.getCustomComponent(), null)), React.createElement(customClassicComponent, null), React.createElement("div", null, "An example")) com.google.gwt.dev.jjs.ast.JDeclarationStatement [ERROR] at ReactMain.java(24): { ClassicComponentClass customClassicComponent = React.createClass(CustomClassicComponent.makeSpec()); FunctionalComponent funcComp = new ReactMain$lambda$0$Type(); ReactMain$FuncProps fProps = new ReactMain$FuncProps(); fProps.aProp = "Its a prop"; DOMElement div = React.createElement("div", (new HTMLProps())._defaultValue("ss")._accept("y"), React.createElement("div", null, React.createElement(funcComp, fProps), React.createElement(CustomComponent.getCustomComponent(), null)), React.createElement(customClassicComponent, null), React.createElement("div", null, "An example")); ReactDOM.render(div, Document.get().getElementById("mainCont")); } com.google.gwt.dev.jjs.ast.JBlock [ERROR] at ReactMain.java(24): { ClassicComponentClass customClassicComponent = React.createClass(CustomClassicComponent.makeSpec()); FunctionalComponent funcComp = new ReactMain$lambda$0$Type(); ReactMain$FuncProps fProps = new ReactMain$FuncProps(); fProps.aProp = "Its a prop"; DOMElement div = React.createElement("div", (new HTMLProps())._defaultValue("ss")._accept("y"), React.createElement("div", null, React.createElement(funcComp, fProps), React.createElement(CustomComponent.getCustomComponent(), null)), React.createElement(customClassicComponent, null), React.createElement("div", null, "An example")); ReactDOM.render(div, Document.get().getElementById("mainCont")); } com.google.gwt.dev.jjs.ast.JMethodBody [ERROR] at ReactMain.java(24): com.ocs.react.client.ReactMain.onModuleLoad()V com.google.gwt.dev.jjs.ast.JMethod [ERROR] at ReactMain.java(16): com.ocs.react.client.ReactMain (extends Object implements EntryPoint) com.google.gwt.dev.jjs.ast.JClassType [ERROR] at Unknown(0): <JProgram> com.google.gwt.dev.jjs.ast.JProgram [ERROR] Unrecoverable exception, shutting down com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries) at com.google.gwt.dev.javac.CompilationProblemReporter.logAndTranslateException(CompilationProblemReporter.java:106) -- You received this message because you are subscribed to the Google Groups "GWT Contributors" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-contributors+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/9b869d0e-960e-48dc-b2d5-87abc587703f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.