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

Maven+Groovy版Spring Boot项目启动后直接退出问题求助

解决Maven+Groovy/Java Spring Boot项目无法启动Tomcat的问题

以下是针对你的问题的具体解决步骤:

1. 确认主类配置正确性

确保你的Groovy主类包含@SpringBootApplication注解,并且有标准的main方法入口:

@SpringBootApplication
class YourApplication {
    static void main(String[] args) {
        SpringApplication.run(YourApplication.class, args)
    }
}

注意:Groovy主类不要写成脚本形式(无class包裹),必须以类的形式定义,否则Maven可能无法识别为可执行主类。

2. 修复Maven插件配置

在pom.xml中补充完整的Spring Boot Maven插件和Groovy编译插件配置,确保主类被正确识别并打包:

<build>
    <plugins>
        <!-- Spring Boot 打包插件,指定主类并绑定repackage目标 -->
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>3.1.5</version>
            <configuration>
                <mainClass>com.yourpackage.YourApplication</mainClass>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <!-- Groovy编译插件,确保Groovy代码被正确编译 -->
        <plugin>
            <groupId>org.codehaus.gmavenplus</groupId>
            <artifactId>gmavenplus-plugin</artifactId>
            <version>1.13.1</version>
            <executions>
                <execution>
                    <goals>
                        <goal>addSources</goal>
                        <goal>addTestSources</goal>
                        <goal>compile</goal>
                        <goal>compileTests</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

3. 修正IntelliJ运行配置

不要直接运行测试类,创建专门的Spring Boot运行配置:

  • 点击右上角运行配置下拉框 → Edit Configurations
  • 点击+ → 选择Spring Boot
  • 在Main class字段手动指定你的主类全路径(如com.yourpackage.YourApplication)
  • 确认JRE选择JDK17
  • 保存配置后运行此配置

4. 验证Web依赖完整性

确保spring-boot-starter-web依赖未被排除或错误引入:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

缺少该依赖会导致Spring Boot以非Web应用模式启动,执行后直接退出,不会启动Tomcat。

5. 清理缓存与重新构建

  • 执行Maven命令:mvn clean install,清理旧编译产物并重新构建
  • 在IntelliJ中执行File → Invalidate Caches... → Invalidate and Restart,清除IDE缓存并重启

6. 检查主类包结构

确保主类位于项目根包下(如com.yourpackage),而非子包,这样Spring Boot才能自动扫描组件和配置,避免因扫描范围不足导致容器无法启动。

7. 统一Java版本配置

在pom.xml中明确指定Java和Groovy版本,与IDE配置保持一致:

<properties>
    <java.version>17</java.version>
    <groovy.version>4.0.15</groovy.version> <!-- 与Spring Boot 3.1.5兼容的版本 -->
</properties>

内容的提问来源于stack exchange,提问作者John Little

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 03:52:41