我需要使用Java 6将GWT
应用程序部署到OC4J
服务器。
我正在使用GWT SDK 2.7.0 - 根据release notes而Java 7是默认值,这可以使用-sourceLevel 6
覆盖,我在Eclipse中添加OC4J
作为编译器参数。
这解决了部署war
时Operation failed with error: com/google/gwt/user/server/rpc/RemoteServiceServlet : unsupported classversion 51.0
进度文本给我的大部分问题 - 但似乎还有一个问题。
OC4J
忽略RemoteServiceServlet
的特殊性,当我将GWT编译器设置为使用Java 6时,为什么<li *ngFor="let task of tasks">
<a [routerLink]="['/task',task.id]" (click)="reloadRoute()">
{{task.name}}
</a>
</li>
是Java 7类?
答案 0 :(得分:2)
听起来你没有使用正确版本的GWT - 要么不是2.7.0,要么你使用的是错误的jar:
$ javap -cp /Users/colin/.m2/repository/com/google/gwt/gwt-servlet/2.7.0/gwt-servlet-2.7.0.jar -v com.google.gwt.user.server.rpc.RemoteServiceServlet
Classfile jar:file:/Users/colin/.m2/repository/com/google/gwt/gwt-servlet/2.7.0/gwt-servlet-2.7.0.jar!/com/google/gwt/user/server/rpc/RemoteServiceServlet.class
Last modified Nov 20, 2014; size 11978 bytes
MD5 checksum ef76115d101d7321764ed74a7d8c1d62
Compiled from "RemoteServiceServlet.java"
public class com.google.gwt.user.server.rpc.RemoteServiceServlet extends com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet implements com.google.gwt.user.server.rpc.SerializationPolicyProvider
minor version: 0
major version: 50
...
我刚刚检查了gwt-user,它也是50.0,检查你的gwt-servlet实际上是你认为你正在使用的版本?