Hannes Wellmann created FELIX-6493:
--------------------------------------
Summary: Extend is-up-to-date logic in ManifestPlugin
Key: FELIX-6493
URL: https://issues.apache.org/jira/browse/FELIX-6493
Project: Felix
Issue Type: Bug
Components: Maven Bundle Plugin
Affects Versions: maven-bundle-plugin-5.1.3
Reporter: Hannes Wellmann
The ManifestPlugin has a logic to determine if the manifest is already
up-to-date in incremental builds (mainly introduced with FELIX-4009 and
FELIX-6074).
This is-up-to-date logic should be extended to consider the following cases:
* The {{MANIFEST.MF}} file to generate does not exist
* the {{pom.xml}} has changed since the last complete-execution.
Besides the instructions, other elements of the pom.xml can influence the
generated manifest like dependencies or properties that are used in the
instructions.
Furthermore the incremental-infos file should be written after the generated
{{MANIFEST.MF}} was written, because {{isUpToDate(MavenProject)}} checks the
target/classes folder where the generated {{MANIFEST.MF}} is written to (by
default). If the incremental-infos are written first, it is likely that the
generated {{MANIFEST.MF}} is not written in the same millisecond, so in the
next call of {{isUpToDate(MavenProject)}} the generated {{MANIFEST.MF}} will be
detected as modified causing a false-negative is-up-to-date check.
These problem where observed in the context of work on Eclipse-M2E to improve
the integration of Maven-Projects that use the maven-bundle-plugin into the
Eclipse-PDE workspace build. If you are interested, these are associated
Issues/PRs:
* [https://github.com/eclipse-m2e/m2e-core/issues/439]
* https://github.com/eclipse-m2e/m2e-core/pull/440
--
This message was sent by Atlassian Jira
(v8.20.1#820001)