Eclipse Java Editor Formatter 向 GWT JSNI 方法主体添加不必要的空格

Eclipse Java Editor Formatter adds unnecessary spaces to GWT JSNI method body

我在我的 Java 文件中声明了 jsni 方法如下:

public static native void alert(String msg) /*-{
    $wnd.alert(msg);
}-*/;

但是当我单击 ctrl + shift + f 使用声明的格式化程序格式化我的代码时,我得到了这个:

public static native void alert(String msg) /*-{
                                            $wnd.alert(msg);
                                            }-*/;

我该如何解决这个问题?

Eclipse 将该文本视为块注释。

转到 Window > Preferences > Java > Code Style > Formatter,然后单击“编辑”并查看 Comments 选项卡并尝试各种选项,看看是否有任何选项可以满足您的需求。

如果您成功复制了您显示的布局,它可能会弄乱现有的块评论,因此请做好妥协的准备。

以下样式不受 Eclipse 格式化程序影响:

public static native void alert(String msg)
/*-{
    $wnd.alert(msg);
}-*/;

当使用正确的 JSNI 感知编辑器时,Eclipse 将为 JSNI 使用 JavaScript 格式化程序,因此您可以在这里调整这些东西(缩进、间距 around/inside 圆括号和大括号,等等)

我刚刚遇到了同样的问题。除了这里已经提到的内容(确保您使用 GWT Java 编辑器),还有其他内容。

我的 GWT Java 编辑器在我的项目中没有工作,因为我没有检查下面的标志(右键单击,属性,GWT)。所以确保这也被选中:

我知道在 GWT 项目中不启用它可能听起来很奇怪,但这不是执行的 'main' GWT 项目。这是一个在多个项目中共享的库。