Skip to content

regression: unable to override existing module-info.java #190

@jknack

Description

@jknack

Hi,

I upgraded from 1.0.0.RC2 to 1.0.0.RC3 and now I got #179 error. Moditect is configured as:

            <groupId>org.moditect</groupId>
            <artifactId>moditect-maven-plugin</artifactId>
            <version>${moditec.version}</version>
            <executions>
              <execution>
                <id>add-module-infos</id>
                <phase>package</phase>
                <goals>
                  <goal>add-module-info</goal>
                </goals>
                <configuration>
                  <overwriteExistingFiles>true</overwriteExistingFiles>
                  <module>
                    <moduleInfoFile>${module-info.shade}</moduleInfoFile>
                  </module>
                </configuration>
              </execution>
            </executions>

I do have an existing module-info.java:

module io.jooby {
  exports io.jooby;
  exports io.jooby.annotation;
  exports io.jooby.exception;

  uses io.jooby.MvcFactory;
  uses io.jooby.Server;
  uses io.jooby.SslProvider;
  uses io.jooby.ResultHandler;

  /*
   * True core deps
   */
  requires jakarta.inject;
  requires org.slf4j;
  requires com.github.spotbugs.annotations;
  requires typesafe.config;
  requires java.management;

  /*
   * Optional dependency for rate limiting
   */
  requires static io.github.bucket4j.core;

  // SHADED: All content after this line will be removed at build time
  requires static unbescape;
  requires kotlinx.coroutines.core.jvm;
  requires kotlin.stdlib;
}

This is valid module-info.java which is used by IDE (Intellij or Eclipse). The last lines of the file:

 // SHADED: All content after this line will be removed at build time
  requires static unbescape;
  requires kotlinx.coroutines.core.jvm;
  requires kotlin.stdlib;

Are processed at build time and extracted/removed so then add-module-infos generates and overrides the module-info.java without those lines.

This was OK in 1.0.0.RC2 but now it fails due to #179 and #182

I understand why #179 was added it, but think overwriteExistingFiles should takes precedence over it.

Thank you

Metadata

Metadata

Assignees

No one assigned

    Labels

    releasedIssue has been released

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions