Skip to content

[MINSTALL-115] Setting installAtEnd causes no installs to occur when a multimodule project has multiple class realms #276

@jira-importer

Description

@jira-importer

Philip Pearson opened MINSTALL-115 and commented

When the installAtEnd configuration parameter is set to true on a multimodule project with multiple class realms then because a different class loaders creates instances of the InstallMojo class there will be muliple instances of readyProjectsCounter and installRequests.

However, because the end is determined by projectsReady = readyProjectsCounter.incrementAndGet() == reactorProjects.size() it will never complete as readyProjectsCounter will never equal the size reactorProjects if even one project is executed in another class realm.

maven-deploy-plugin partially solved this in MDEPLOY-193 by using project.equals(reactorProjects.get(reactorProjects.size() - 1)) instead. However, the installation is a little more complex than the deploy as we need to read the used the createChecksum and updateReleaseInfo configuration parameters from each installed project - we can't store them ahead of time because of the issue with the class realms, so we need to read the plugin configurations before we can call installProject(instalRequest).


Affects: 2.5.2

Attachments:

Issue Links:

  • MINSTALL-102 installAtEnd does not install artifacts for multi-module with packaging maven-archetype

  • KYLIN-3644 NumberFormatExcetion on null values when building cube with Spark
    ("is required by")

Remote Links:

1 votes, 6 watchers

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingpriority:majorMajor loss of function

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions