0

私は一日中アプリケーションを完全にコンパイルしてきましたが、突然失敗し始めました。下からわかるように、それはですが、NullPointException何が悪いのかわかりません。誰かが以前にこれに対処したことがありますか、または何か助けやガイダンスを提供することができますか?

[INFO] [enunciate:assemble {execution: default}]
[INFO] initializing enunciate.
[INFO] invoking enunciate:generate step...
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
[INFO] invoking enunciate:compile step...
[INFO] [gwt] Compiling module com.project.myProject
[INFO] [gwt] Validating newly compiled units
[INFO] [gwt] [ERROR] Unexpected
[INFO] [gwt] java.lang.NullPointerException
[INFO] [gwt] at com.google.gwt.dev.javac.JdtCompiler$FindTypesInCud.visit(JdtCompiler.java:179)
[INFO] [gwt] at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.traverse(TypeDeclaration.java:1253)
[INFO] [gwt] at org.eclipse.jdt.internal.compiler.ast.QualifiedAllocationExpression.traverse(QualifiedAllocationExpression.java:478)
[INFO] [gwt] at org.eclipse.jdt.internal.compiler.ast.MessageSend.traverse(MessageSend.java:576)
[INFO] [gwt] at org.eclipse.jdt.internal.compiler.ast.ConstructorDeclaration.traverse(ConstructorDeclaration.java:505)
[INFO] [gwt] at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.traverse(TypeDeclaration.java:1239)
[INFO] [gwt] at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.traverse(CompilationUnitDeclaration.java:687)
[INFO] [gwt] at com.google.gwt.dev.javac.JdtCompiler$CompilerImpl.process(JdtCompiler.java:158)
[INFO] [gwt] at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:444)
[INFO] [gwt] at com.google.gwt.dev.javac.JdtCompiler.doCompile(JdtCompiler.java:467)
[INFO] [gwt] at com.google.gwt.dev.javac.CompilationStateBuilder$CompileMoreLater.compile(CompilationStateBuilder.java:142)
[INFO] [gwt] at com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:281)
[INFO] [gwt] at com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:182)
[INFO] [gwt] at com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:280)
[INFO] [gwt] at com.google.gwt.dev.Precompile.precompile(Precompile.java:502)
[INFO] [gwt] at com.google.gwt.dev.Precompile.precompile(Precompile.java:414)
[INFO] [gwt] at com.google.gwt.dev.Compiler.run(Compiler.java:201)
[INFO] [gwt] at com.google.gwt.dev.Compiler$1.run(Compiler.java:152)
[INFO] [gwt] at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:87)
[INFO] [gwt] at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:81)
[INFO] [gwt] at com.google.gwt.dev.Compiler.main(Compiler.java:159)
4

2 に答える 2

0

依存するjarを更新せずに、新しいGWTバージョンに更新しましたか?

Enunciateは、デフォルトでGWT1.5.2jarに依存します。ただし、Enunciateの新しいバージョンに更新する場合は、依存関係を新しいバージョンに更新する必要があります。

<dependency>
  <groupId>com.google.gwt</groupId>
  <artifactId>gwt-user</artifactId>
  <version>2.0.0</version>
</dependency>

<dependency>
  <groupId>com.google.gwt</groupId>
  <artifactId>gwt-servlet</artifactId>
  <version>2.0.0</version>
</dependency>
于 2010-09-17T15:21:31.153 に答える
0

まず、GWTの更新が機能しない場合は、可能であれば、コードを正常に機能するバージョンに戻します。

バグのあるソースをコンパイルしようとしたときに、コンパイラからこのエラーメッセージが表示されました。これには、インスタンスが(コンパイルユニットで)構築されていないユーザー定義型の変数でメソッドを呼び出す際のエラーが含まれています。

次の問題により、表示されているエラーが発生する可能性があると確信しています。念のため、再現しました。もちろん、これがあなたの問題であるという意味ではありませんが、それはあなたに何かを探すことを与えるかもしれません。

コンパイラがNullPointerExceptionで失敗します:

MyDumbClass foo;
foo.doSomething();

問題はありません:

MyDumbClass foo = new MyDumbClass();
foo.doSomething();

私は...そして私は完全に推測しています...これは、GWTが実際に呼び出すものに対してのみjavascriptを出力するという事実と関係があります。したがって、エントリポイントから開始してコールグラフを作成し、他のすべてを除外する必要があります。出力の...そのアルゴリズムでは、MyDumbClass、またはMyDumbClassのネストされた型がスローされる可能性があります。

于 2010-09-19T18:35:04.133 に答える