3

Grails Dependencies の STS に問題があります。間違ったディレクトリを指しているエントリが 1 つあります。エラーが原因で内部 STS ビルドが失敗します:

Problems occurred when invoking code from plug-in: "org.eclipse.core.resources".

  java.lang.NullPointerException
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNodeBuilder.toRawType(JDTClassNodeBuilder.java:116)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNodeBuilder.configureParameterizedType(JDTClassNodeBuilder.java:290)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNodeBuilder.configureType(JDTClassNodeBuilder.java:56)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNodeBuilder.build(JDTClassNodeBuilder.java:46)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNode.makeClassNode(JDTClassNode.java:399)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNode.makeParameter(JDTClassNode.java:379)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNode.makeParameters(JDTClassNode.java:366)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNode.methodBindingToMethodNode(JDTClassNode.java:339)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNode.initializeMembers(JDTClassNode.java:256)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNode.initialize(JDTClassNode.java:227)
    at org.codehaus.jdt.groovy.internal.compiler.ast.JDTClassNode.lazyClassInit(JDTClassNode.java:158)
    at org.codehaus.groovy.ast.ClassNode.getUnresolvedSuperClass(ClassNode.java:1087)
    at org.codehaus.groovy.ast.ClassNode.getUnresolvedSuperClass(ClassNode.java:1079)
    at org.codehaus.groovy.ast.ClassNode.getSuperClass(ClassNode.java:1073)
    at org.codehaus.groovy.ast.ClassNode.isDerivedFrom(ClassNode.java:1013)
    at org.codehaus.groovy.classgen.ClassCompletionVerifier.visitCatchStatement(ClassCompletionVerifier.java:448)
    at org.codehaus.groovy.ast.stmt.CatchStatement.visit(CatchStatement.java:41)
    at org.codehaus.groovy.ast.CodeVisitorSupport.visitTryCatchFinally(CodeVisitorSupport.java:84)
    at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitTryCatchFinally(ClassCodeVisitorSupport.java:244)
    at org.codehaus.groovy.ast.stmt.TryCatchStatement.visit(TryCatchStatement.java:42)
    at org.codehaus.groovy.ast.CodeVisitorSupport.visitBlockStatement(CodeVisitorSupport.java:35)
    at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitBlockStatement(ClassCodeVisitorSupport.java:179)
    at org.codehaus.groovy.ast.stmt.BlockStatement.visit(BlockStatement.java:69)
    at org.codehaus.groovy.ast.CodeVisitorSupport.visitIfElse(CodeVisitorSupport.java:56)
    at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitIfElse(ClassCodeVisitorSupport.java:219)
    at org.codehaus.groovy.ast.stmt.IfStatement.visit(IfStatement.java:41)
    at org.codehaus.groovy.ast.CodeVisitorSupport.visitBlockStatement(CodeVisitorSupport.java:35)
    at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitBlockStatement(ClassCodeVisitorSupport.java:179)
    at org.codehaus.groovy.ast.stmt.BlockStatement.visit(BlockStatement.java:69)
    at org.codehaus.groovy.ast.CodeVisitorSupport.visitClosureExpression(CodeVisitorSupport.java:174)
    at org.codehaus.groovy.ast.expr.ClosureExpression.visit(ClosureExpression.java:45)
    at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitProperty(ClassCodeVisitorSupport.java:142)
    at org.codehaus.groovy.classgen.ClassCompletionVerifier.visitProperty(ClassCompletionVerifier.java:349)
    at org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1160)
    at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClass(ClassCodeVisitorSupport.java:51)
    at org.codehaus.groovy.classgen.ClassCompletionVerifier.visitClass(ClassCompletionVerifier.java:74)
    at org.codehaus.groovy.control.CompilationUnit$6.call(CompilationUnit.java:838)
    at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1152)
    at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:588)
    at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:566)
    at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:543)
    at org.codehaus.jdt.groovy.internal.compiler.ast.GroovyCompilationUnitDeclaration.processToPhase(GroovyCompilationUnitDeclaration.java:171)
    at org.codehaus.jdt.groovy.internal.compiler.ast.GroovyCompilationUnitDeclaration.generateCode(GroovyCompilationUnitDeclaration.java:1555)
    at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:838)
    at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:137)
    at java.lang.Thread.run(Unknown Source)

Grails コマンドrun-appは正常に動作します。

プラグインクラスを 不要にリンクして、このエントリを取得しました

C:\Documents and Settings\<myUserName>\.grails\1.3.7\projects\<ProjectName>\plugin-classes

そして今、このエントリを削除する方法を探していますが、[プロジェクト] -> [ビルド パス] -> [ビルド パスの構成] -> [ライブラリ] の下で、削除ボタンが無効になっています。

.classpath ファイルの中を見ると、次のエントリが表示されます。

<classpathentry kind="con" path="org.grails.ide.eclipse.core.CLASSPATH_CONTAINER"/>

CLASSPATH_CONTAINER に関する Google は失敗しました。confディレクトリ内のファイルに変更はありません(subversion との差分)

私はすでにやろうとしました:

  1. .ivy2 フォルダを削除
  2. .grails フォルダーを削除する
  3. グレイルズクリーン
  4. Grails->依存関係をリフレッシュ
  5. プロジェクト -> クリーン
  6. プロジェクトを削除し、SVN から最新バージョンをインポートする
  7. ワークスペースを削除して新しいワークスペースを作成する
  8. 1..7 の任意の組み合わせ

助けてください!

4

2 に答える 2

2

次の手順で問題が解決しました。

  1. .grailsフォルダーを削除します
  2. .ivy2フォルダーを削除します
  3. ワークスペースを削除する
  4. Eclipseを再インストールします(これは欠落しているステップでした)
  5. リストアイテム
  6. プロジェクトを新しいワークスペースにインポートします
  7. このプロジェクトでは、grailsとGroovyコンパイラのバージョンがアップグレードされていないことを確認してください。

どのステップを省略できるかわかりません。ラルフ、提案してくれてありがとう。

于 2013-01-02T11:11:09.350 に答える
2
  1. .ivy2 フォルダを削除
  2. .grails フォルダーを削除する
  3. .m2 フォルダを削除
  4. 追加されたすべてのプラグインを application.properties から削除します
  5. 追加されたすべてのプラグインを BuildConfig.groovy から削除します
  6. プロジェクトを再起動してみてください - 今すぐ動作するはずです
  7. プラグインを再インストールします
于 2012-12-27T16:54:50.290 に答える