2

私はこの問題の解決策を高低で探してきましたが、正しい答えを見つけることができないようです. 私は独特の状況にあると思います。したがって、問題の解決はさらに困難になる可能性があります。問題の核心は、コマンド
を実行したときに表示される次のエラー メッセージです。mvn test

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:testCompile (default-testCompile) on project DriveServiceFitnesse: Fatal error compiling: java.lang.ClassCastException: com.sun.tools.javac.code.Attribute$Error cannot be cast to com.sun.tools.javac.code.Attribute$Class -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

ただしmvn compile、エラーは発生しません。しかし、テスト ソースを生成するには mvn test が必要なので、テストは実際には機能していません。テストを実行すると、次のエラーが発生するため、これを知っています。

    Error:java: java.lang.ClassCastException: 
com.sun.tools.javac.code.Attribute$Error cannot be cast to 
com.sun.tools.javac.code.Attribute$Class

プロジェクトは問題なくコンパイルおよび実行されていました。この問題は、プロジェクトを Maven から Gradle に変換しようとしたときに発生しました。同様の問題が発生したため、ブランチを閉じて、元の作業コード/プロジェクトをプルダウンしましたが、修正できないようです。

この問題に関する助けをいただければ幸いです。それが役立つ場合は、pom.xml ファイルを投稿します。

*編集:スタックトレースメッセージに貼り付けている提案に基づいて、次のように表示されます:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:testCompile (default-testCompile) on project DriveServiceFitnesse: Fatal error compiling: java.lang.ClassCastException: com.sun.tools.javac.code.Attribute$Error cannot be cast to com.sun.tools.javac.code.Attribute$Class -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:testCompile (default-testCompile) on project DriveServiceFitnesse: Fatal error compiling
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:862)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:197)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Fatal error compiling
        at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:836)
        at org.apache.maven.plugin.compiler.TestCompilerMojo.execute(TestCompilerMojo.java:153)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
4

3 に答える 3

1

このエラーを修正しました。私の見落としでした。問題は、何らかの理由で、「プロジェクト構造」(intellij) を使用してインポートしたローカル jar が何らかの理由で期限切れになったことです。つまり、ライブラリはまだリストされていますが、プロジェクトに適切に取り込まれていませんでした。参照を削除して再インポートしたところ、うまくいったようです...ため息。

于 2015-07-24T17:41:47.680 に答える
0

私にとって、この問題は、別の e2e テスト プロファイルと共に、pom.xml で「デフォルトの Maven プロファイル」を使用しようとしたことが原因でした。通常のポンに戻しましたが、現在は機能しています。本当の原因はまだわかりません。

于 2021-07-06T20:57:34.220 に答える
0

問題の根本原因を見つけるために複数の解決策を試しましたが、マシンが通常よりもクラスのコンパイルに時間がかかりすぎていることがわかったため、構成で maxmem オプションを増やしてみました。

コンパイラ プラグインの maxmem オプションを1024m から 2048m に変更したところ、問題が解決しました

于 2020-06-24T13:30:30.467 に答える