[
https://issues.apache.org/jira/browse/MNG-7740?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17725081#comment-17725081
]
ASF GitHub Bot commented on MNG-7740:
-------------------------------------
gnodet commented on code in PR #1105:
URL: https://github.com/apache/maven/pull/1105#discussion_r1200930937
##########
maven-core/src/main/java/org/apache/maven/internal/transformation/ConsumerPomArtifactTransformer.java:
##########
@@ -77,13 +80,34 @@ public void injectTransformedArtifacts(MavenProject
project, RepositorySystemSes
Files.createDirectories(buildDir);
generatedFile = Files.createTempFile(buildDir,
CONSUMER_POM_CLASSIFIER, "pom");
}
+
+ removeOldConsumerPomFiles(generatedFile);
Review Comment:
> > @Giovds have a look at
[gnodet@11009e9](https://github.com/gnodet/maven/commit/11009e9f6921657e31384bd9838d5ab1edb1aacc),
could you double check that it works for you ?
>
> Cool, TIL! Just verified it and it does work for me. The files are cleaned
up.
>
> Do note that the final result means there will be no consumer*pom file in
the build dir whatsoever. I don't know if it was kept for a reason. Perhaps the
file is/will be (re)used for build-consumer features beyond a single run? If
it's not and it's a temp file, why not always use the temp dir e.g.?
>
> * Without to much research: * Seems like (in this class at least) the
`CONSUMER_POM_CLASSIFIER` is private so not used by other classes and the build
dir is never queried for the file, only in-memory artifact lists?
Yes, I think it was written to disk because it was needed as a file and
there was no easy way to delete it at the end of the process, but they're not
supposed to outlive the session.
> Target directory is flooded with consumer*pom files
> ---------------------------------------------------
>
> Key: MNG-7740
> URL: https://issues.apache.org/jira/browse/MNG-7740
> Project: Maven
> Issue Type: Improvement
> Components: build/consumer, Core
> Affects Versions: 4.0.0-alpha-4
> Environment: Apache Maven 4.0.0-alpha-4
> (009cf4a7213aead8a7946a2397e2396c5927f30f)
> Maven home: /Users/maarten/Tools/apache-maven-4.0.0-alpha-4
> Java version: 17.0.6, vendor: Eclipse Adoptium, runtime:
> /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
> Default locale: en_NL, platform encoding: UTF-8
> OS name: "mac os x", version: "13.2.1", arch: "aarch64", family: "mac"
> Reporter: Maarten Mulders
> Priority: Minor
> Labels: up-for-grabs
>
> After invoking Mavens {{validate}} or later lifecycle phase, there is a
> *consumerXXXpom* file left in the build directory. Here, XXX is a bunch of
> numbers.
> It is not harmful, but I dislike the fact that for every invocation of Maven,
> the file gets generated again and again. This can quickly lead to tens of
> files that are never used again anymore. I feel we should clean those files
> when we're done using them.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)