Skip to content

[MNG-6616] Create public API for Projects Artifacts Cache where one project can be invalidated #8596

@jira-importer

Description

@jira-importer

Balazs Zsoldos opened MNG-6616 and commented

By introducing the Projects Artifact Cache, single builds became faster. However, there are tools that embed Maven and do not restart the complete JVM process between builds: M2E, mvnsh, etc.

These tools cannot force the refresh of project artifacts currently based on a stable public API of Maven. It would be nice if there was a public stable API, where projects could be invalidated in the cache even one-by-one, so the recompilation of a project would be the fastest possible.

In case of designing such an API, it should not be only about project artifacts cache, so if new caches introduced later by maven internally, the API should invalidate the project-specific records in all of them.

I mean that the API interface should not be called ProjectArtifactCache, but more like ProjectCache, where the first current implementation would invalidate records in ProjectArtifactCache, but later if new caches are introduced, the same API call would manage those caches, too.

 


Affects: 3.6.0

Issue Links:

  • MNG-6530 Regression in ProjectBuilder when file change between invocations (introduced by MNG-6311)

  • MNG-5669 same pom.xml is read multiple times

  • MNG-6311 Maven intolerably slow when import scope used heavily in large project

  • MNG-7027 Invalidate project cache upon changes

0 votes, 5 watchers

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions