Skip to content

Web Plugin bootRun fails #14832

@cbmarcum

Description

@cbmarcum

Expected Behavior

A web plug should bootRun for development.

Actual Behaviour

bootRun fails to start application.
In build classes are produced but no libs or resolvedMainClassName file that a working web app has.

Steps To Reproduce

From Grails Forge web app created 06/25/2025:

Grails Version: 7.0.0-SNAPSHOT
Gorm Implementation: Gorm Hibernate5
Embedded Servlet Container: Spring Boot Starter Tomcat
Test Framework: Spock

Project Type: Web Plugin
Java Version: 21
Name: myplugin
Base Package: com.example

No added features.

./gradlew bootRun --info

Task :classes
Skipping task ':classes' as it has no actions.
Resolve mutations for :findMainClass (Thread[#234,Execution worker,5,main]) started.
:findMainClass (Thread[#234,Execution worker,5,main]) started.

Task :findMainClass
Build cache key for task ':findMainClass' is 2e8fb4db1253c5949434f6e51e60eea7
Task ':findMainClass' is not up-to-date because:
Task.upToDateWhen is false.
There is neither a bootJar or bootWar task that will run. Skipping finding main Application class.
Stored cache entry for task ':findMainClass' with cache key 2e8fb4db1253c5949434f6e51e60eea7
Resolve mutations for :bootRun (Thread[#234,Execution worker,5,main]) started.
:bootRun (Thread[#234,Execution worker,5,main]) started.

Task :bootRun FAILED
Caching disabled for task ':bootRun' because:
Application should always run
Task ':bootRun' is not up-to-date because:
Task has not declared any outputs despite executing actions.

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':bootRun'.

No main class specified and classpath is not an executable jar.

In build.gradle, if I comment out:
// apply plugin: "org.apache.grails.gradle.grails-plugin"

It will bootRun:

Task :classes
Skipping task ':classes' as it has no actions.
Resolve mutations for :findMainClass (Thread[#435,Execution worker,5,main]) started.
:findMainClass (Thread[#435,Execution worker,5,main]) started.

Task :findMainClass
Build cache key for task ':findMainClass' is be1741b4aadd3b0e43cc66427eeae89d
Task ':findMainClass' is not up-to-date because:
Task.upToDateWhen is false.
Stored cache entry for task ':findMainClass' with cache key be1741b4aadd3b0e43cc66427eeae89d
Resolve mutations for :bootRun (Thread[#435,Execution worker,5,main]) started.
:bootRun (Thread[#435,Execution worker,5,main]) started.

Task :bootRun
Caching disabled for task ':bootRun' because:
Application should always run
Task ':bootRun' is not up-to-date because:
Task has not declared any outputs despite executing actions.
Starting process 'command '/Users/carl/.sdkman/candidates/java/21.0.7.fx-librca/bin/java''.

rs/carl/.gradle/caches/modules-2/files-2.1/org.graalvm.sdk/word/24.1.2/58113ba6514ffe9a702ba9e6998655f44ea70b66/word-24.1.2.jar com.example.Application
Successfully started process 'command '/Users/carl/.sdkman/candidates/java/21.0.7.fx-librca/bin/java''

Grails application running at http://localhost:8080 in environment: development

User mailing list discussion:
https://lists.apache.org/thread/mb03y0hbs92sohltodtqb4n2rdcpbw5c

Environment Information

OS: Mac OS X 15.5 aarch64
Gradle (Wrapper): 8.14
Launcher JVM: 21.0.7 (BellSoft 21.0.7+9-LTS)

Example Application

see Grails Forge instructions above.

Version

7.0.0-SNAPSHOT (also 7.0.0-M4)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions