GoogleContainerTools/jib · error · MojoExecutionException

error running extension '<extensionClassName>': <message>

Error message

error running extension '<extensionClassName>': <message>

What it means

Thrown as a MojoExecutionException from BuildTarMojo.execute when a configured Jib plugin extension (JibPluginExtensionException) fails during the build. The message wraps the extension class's fully-qualified name and the extension's own error message, so the root cause usually lies in the extension, not core Jib.

Source

Thrown at jib-maven-plugin/src/main/java/com/google/cloud/tools/jib/maven/BuildTarMojo.java:139

    } catch (InvalidFilesModificationTimeException ex) {
      throw new MojoExecutionException(
          "<container><filesModificationTime> should be an ISO 8601 date-time (see "
              + "DateTimeFormatter.ISO_DATE_TIME) or special keyword \"EPOCH_PLUS_SECOND\": "
              + ex.getInvalidFilesModificationTime(),
          ex);

    } catch (InvalidCreationTimeException ex) {
      throw new MojoExecutionException(
          "<container><creationTime> should be an ISO 8601 date-time (see "
              + "DateTimeFormatter.ISO_DATE_TIME) or a special keyword (\"EPOCH\", "
              + "\"USE_CURRENT_TIMESTAMP\"): "
              + ex.getInvalidCreationTime(),
          ex);

    } catch (JibPluginExtensionException ex) {
      String extensionName = ex.getExtensionClass().getName();
      throw new MojoExecutionException(
          "error running extension '" + extensionName + "': " + ex.getMessage(), ex);

    } catch (IncompatibleBaseImageJavaVersionException ex) {
      throw new MojoExecutionException(
          HelpfulSuggestions.forIncompatibleBaseImageJavaVersionForMaven(
              ex.getBaseImageMajorJavaVersion(), ex.getProjectMajorJavaVersion()),
          ex);

    } catch (InvalidImageReferenceException ex) {
      throw new MojoExecutionException(
          HelpfulSuggestions.forInvalidImageReference(ex.getInvalidReference()), ex);

    } catch (IOException
        | CacheDirectoryCreationException
        | MainClassInferenceException
        | InvalidGlobalConfigException ex) {
      throw new MojoExecutionException(ex.getMessage(), ex);

View on GitHub (pinned to fb949e2676)

Solutions

  1. Read the inner <message> and caused-by stack trace in the Maven output — it names the extension and its own failure reason.
  2. Check the extension's compatibility with your Jib plugin version; upgrade both to latest release.
  3. Verify the extension is applicable to your project type (e.g. only apply the Spring Boot extension to Spring Boot apps).
  4. Temporarily remove/disable the extension (-Djib.extension... unset) to confirm the base build succeeds, then re-add configuration incrementally.
Defensive patterns

Strategy: try-catch

Try / catch

// Maven CLI: re-run with full cause chain
mvn jib:buildTar -e --errors
// In build scripts, treat extension failures as non-retryable config bugs; pin extension
// and Jib plugin versions together in <pluginManagement>.

Prevention

When it happens

Trigger: Configuring a <plugin><dependencies> extension (e.g. jib-spring-boot-extension-maven, jib-ownership-extension-maven, or a custom JibPluginExtension) via -Djib.extension.<name>=<class> or plugin configuration, and the extension throws while transforming the build configuration.

Common situations: Extension applied to a project it doesn't support (e.g. Spring Boot extension on a non-Boot project), incompatible extension/Jib version, or a custom extension bug surfaced by extension-specific messages.

Related errors


AI-assisted analysis of GoogleContainerTools/jib@fb949e2676 (2026-09-06). Data as JSON: /api/errors/9e18074a2781ce84. Report an issue: GitHub.