You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行Maven clean后Java应用报错找不到主类,求原因

Maven Clean后无法找到主类的原因及解决方法

核心原因

Maven的clean命令会直接删除项目根目录下的target文件夹——这是Maven存放编译后的.class文件、打包产物等的核心目录。执行clean后,之前编译好的StartApplication.class会被彻底清除,如果没有重新执行编译步骤就直接运行应用,自然会出现找不到主类的错误。

额外潜在问题(结合你的pom.xml)

你的pom.xml缺少maven-compiler-plugin配置,这可能导致:

  • JDK编译版本与运行环境不匹配
  • 编译后的class文件没有正确生成到target/classes目录
    另外需要确认项目结构是否符合Maven规范:主代码必须放在src/main/java目录下,org.main.StartApplication对应的文件路径应为src/main/java/org/main/StartApplication.java。

解决步骤

  • 重新编译项目:在STS4中右键项目 → Run As → Maven build...,在Goals输入框中填写compile并执行,或者直接在终端运行mvn compile命令,这会重新生成编译后的class文件到target/classes目录。
  • 补充maven-compiler-plugin配置:在pom.xml的<project>标签内添加以下配置(根据你实际使用的JDK版本调整source和target的版本号,示例为JDK8):
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>
  • 验证项目结构:确认StartApplication.java的存放路径正确,若路径错误,将文件移动到src/main/java/org/main/目录下。
  • 重新运行应用:编译完成后,右键StartApplication.java → Run As → Java Application,即可正常启动。

内容的提问来源于stack exchange,提问作者Juan Cruz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 20:35:39