Uploaded image for project: 'Maven Build Cache Extension'
  1. Maven Build Cache Extension
  2. MBUILDCACHE-47

Extension computes a new check sum for a project with multiple modules without any changes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Not A Bug
    • None
    • None
    • remote build cache
    • None

    Description

      I have a maven project with 2 modules and a parent pom as such

      <modules>
          <module>api</module>
          <module>service</module>
      </modules> 

      I would like to take advantage of the maven cache extension and I've added it in the build section of the parent pom as such

      <extensions>
          <extension>
              <groupId>org.apache.maven.extensions</groupId>
              <artifactId>maven-build-cache-extension</artifactId>
              <version>1.0.0</version>
           </extension>
      </extensions> 

      I've also added a maven-build-cache-config.xml file however it would seem that every time I run mvn clean package a different checksum is generated for my submodules and as a result I don't actually benefit from the caching since all my java files are in those submodules

      I've tried multiple configs with no luck unfortunately

      <?xml version="1.0" encoding="UTF-8" ?>
      <cache xmlns="http://maven.apache.org/BUILD-CACHE-CONFIG/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/BUILD-CACHE-CONFIG/1.0.0 http://maven.apache.org/xsd/cache-config-1.0.0.xsd">
          <configuration>
              <enabled>true</enabled>
              <hashAlgorithm>XX</hashAlgorithm>
          </configuration>
          <input>
              <global>
                  <glob>{*.java,*.xml,*.properties}</glob>
                  <includes>
                      <include>recursive=api/*</include>
                      <include>recursive=service/*</include>
                  </includes>
              </global>
          </input>
      </cache> 

      How can I make this extension actually cache the contents of my submodules with the same checksum if there haven't been changes. I know this extension is fairly recent and I haven't been able to find any hits online.

      EDIT

      Commenting one of the child modules out, actually ended up working and the cache is kicking in correctly. Is it possible there's a limitation to the extension in that it scans for a single module?

      Attachments

        1. api-module-v1.xml
          40 kB
          Venelin Koulaxazov
        2. api-module-v2.xml
          40 kB
          Venelin Koulaxazov
        3. parent-module-v1.xml
          12 kB
          Venelin Koulaxazov
        4. service-module-v1.xml
          74 kB
          Venelin Koulaxazov
        5. service-module-v2.xml
          74 kB
          Venelin Koulaxazov

        Activity

          People

            Unassigned Unassigned
            venelin.koulaxazov Venelin Koulaxazov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: