[jira] [Commented] (MSHADE-451) Shade plugin not using `build.finalName` to produce artifact with classifier.
[ https://issues.apache.org/jira/browse/MSHADE-451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17737877#comment-17737877 ] Garret Wilson commented on MSHADE-451: -- And this works fine in the [Maven Assembly Plugin|https://maven.apache.org/plugins/maven-assembly-plugin/], which [uses {{${project.build.finalName}}}https://maven.apache.org/plugins/maven-assembly-plugin/single-mojo.html#finalName] as it should. Looks definitely like a Maven Shade Plugin bug, unless I inadvertently put a configuration in my POM I didn't notice. > Shade plugin not using `build.finalName` to produce artifact with classifier. > - > > Key: MSHADE-451 > URL: https://issues.apache.org/jira/browse/MSHADE-451 > Project: Maven Shade Plugin > Issue Type: Bug >Affects Versions: 3.4.1 >Reporter: Garret Wilson >Priority: Major > > I'm using Maven 3.9.1 with Java 17 on Windows 10, and Maven Shade Plugin > 3.4.1. > I'm using a technique which I described in MNG-7815 which allows me to easily > set the base filename of the generated artifacts in {{{}target/{}}}. > # In a separate parent pom ("Root POM") in the {{}} section I > set a property > {{{}${project.artifactId}{}}}. > # In the {{}} section I set > {{{}${build.finalBaseName}-${project.version}{}}}. > Let's suppose my project (which inherits from Root POM) has its own child > project with an {{{}bar{}}}. Normally because of the > default Maven {{{}build.finalName{}}}, setting, the target artifacts will be > e.g.: > * {{bar-1.2.3.jar}} > * {{bar-1.2.3-javadoc.jar}} > However with the configuration I described above, I merely need to set the > following property in the child project: > {code:xml} > foo-${project.artifactId} > {code} > Now my artifacts are generated with these names, just like I want: > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > However the Maven Shade Plugin seems to be ignoring the final > {{build.finalName}} and just assuming that it is set to the > {{{}${project.artifactId}-$\{project.version{ (which is the Maven > default). For example let's say I add the following to my Maven Shade Plugin > {{{}{}}}: > {code:xml} > true > aws-lambda > {code} > I would expect the classifier to be added to the {{build.finalName}} (which > is now {{{}foo-bar-1.2.3{}}})—after all, the Javadoc plugin does this just > fine. However I get this: > * {{bar-aws-lambda-1.2.3.jar}} > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > {{bar-aws-lambda-1.2.3.jar}} should be {{foo-bar-aws-lambda-1.2.3.jar}} > (compare with the other generated artifacts). I'm guessing the Maven Shade > Plugin is making assumptions about the value of {{build.finalName}} instead > of using the actual value of {{{}build.finalName{}}}. > I have not yet done further investigations or tested with the latest version > of the plugin. (I think I saw that a newer version has been released.) > Nevertheless I wanted to record this bug while I have all the necessary > windows open, before I stop for lunch and forget how all these pieces fit > together. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MSHADE-451) Shade plugin not using `build.finalName` to produce artifact with classifier.
[ https://issues.apache.org/jira/browse/MSHADE-451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17737865#comment-17737865 ] Garret Wilson commented on MSHADE-451: -- I want to point out that this works fine with the [Spring Boot Maven Plugin|https://docs.spring.io/spring-boot/docs/current/maven-plugin/reference/htmlsingle/], too. In other words, if I tell it a classifier of {{example}}, it produces {{foo-bar-1.2.3-example.jar}} as expected, and not {{bar-1.2.3-example.jar}} as the Maven Shade Plugin does. > Shade plugin not using `build.finalName` to produce artifact with classifier. > - > > Key: MSHADE-451 > URL: https://issues.apache.org/jira/browse/MSHADE-451 > Project: Maven Shade Plugin > Issue Type: Bug >Affects Versions: 3.4.1 >Reporter: Garret Wilson >Priority: Major > > I'm using Maven 3.9.1 with Java 17 on Windows 10, and Maven Shade Plugin > 3.4.1. > I'm using a technique which I described in MNG-7815 which allows me to easily > set the base filename of the generated artifacts in {{{}target/{}}}. > # In a separate parent pom ("Root POM") in the {{}} section I > set a property > {{{}${project.artifactId}{}}}. > # In the {{}} section I set > {{{}${build.finalBaseName}-${project.version}{}}}. > Let's suppose my project (which inherits from Root POM) has its own child > project with an {{{}bar{}}}. Normally because of the > default Maven {{{}build.finalName{}}}, setting, the target artifacts will be > e.g.: > * {{bar-1.2.3.jar}} > * {{bar-1.2.3-javadoc.jar}} > However with the configuration I described above, I merely need to set the > following property in the child project: > {code:xml} > foo-${project.artifactId} > {code} > Now my artifacts are generated with these names, just like I want: > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > However the Maven Shade Plugin seems to be ignoring the final > {{build.finalName}} and just assuming that it is set to the > {{{}${project.artifactId}-$\{project.version{ (which is the Maven > default). For example let's say I add the following to my Maven Shade Plugin > {{{}{}}}: > {code:xml} > true > aws-lambda > {code} > I would expect the classifier to be added to the {{build.finalName}} (which > is now {{{}foo-bar-1.2.3{}}})—after all, the Javadoc plugin does this just > fine. However I get this: > * {{bar-aws-lambda-1.2.3.jar}} > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > {{bar-aws-lambda-1.2.3.jar}} should be {{foo-bar-aws-lambda-1.2.3.jar}} > (compare with the other generated artifacts). I'm guessing the Maven Shade > Plugin is making assumptions about the value of {{build.finalName}} instead > of using the actual value of {{{}build.finalName{}}}. > I have not yet done further investigations or tested with the latest version > of the plugin. (I think I saw that a newer version has been released.) > Nevertheless I wanted to record this bug while I have all the necessary > windows open, before I stop for lunch and forget how all these pieces fit > together. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MSHADE-451) Shade plugin not using `build.finalName` to produce artifact with classifier.
[ https://issues.apache.org/jira/browse/MSHADE-451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17736921#comment-17736921 ] Garret Wilson commented on MSHADE-451: -- {quote}Hello human from the future: In which year will Windows 17 be released?\{quote} Ack! I was hungry, OK? There were too many 10s and 17s and 3.91s and 3.4.1s and I was in a rush. But I fixed it. > Shade plugin not using `build.finalName` to produce artifact with classifier. > - > > Key: MSHADE-451 > URL: https://issues.apache.org/jira/browse/MSHADE-451 > Project: Maven Shade Plugin > Issue Type: Bug >Affects Versions: 3.4.1 >Reporter: Garret Wilson >Priority: Major > > I'm using Maven 3.9.1 with Java 17 on Windows 10, and Maven Shade Plugin > 3.4.1. > I'm using a technique which I described in MNG-7815 which allows me to easily > set the base filename of the generated artifacts in {{{}target/{}}}. > # In a separate parent pom ("Root POM") in the {{}} section I > set a property > {{{}${project.artifactId}{}}}. > # In the {{}} section I set > {{{}${build.finalBaseName}-${project.version}{}}}. > Let's suppose my project (which inherits from Root POM) has its own child > project with an {{{}bar{}}}. Normally because of the > default Maven {{{}build.finalName{}}}, setting, the target artifacts will be > e.g.: > * {{bar-1.2.3.jar}} > * {{bar-1.2.3-javadoc.jar}} > However with the configuration I described above, I merely need to set the > following property in the child project: > {code:xml} > foo-${project.artifactId} > {code} > Now my artifacts are generated with these names, just like I want: > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > However the Maven Shade Plugin seems to be ignoring the final > {{build.finalName}} and just assuming that it is set to the > {{{}${project.artifactId}-$\{project.version{ (which is the Maven > default). For example let's say I add the following to my Maven Shade Plugin > {{{}{}}}: > {code:xml} > true > aws-lambda > {code} > I would expect the classifier to be added to the {{build.finalName}} (which > is now {{{}foo-bar-1.2.3{}}})—after all, the Javadoc plugin does this just > fine. However I get this: > * {{bar-aws-lambda-1.2.3.jar}} > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > {{bar-aws-lambda-1.2.3.jar}} should be {{foo-bar-aws-lambda-1.2.3.jar}} > (compare with the other generated artifacts). I'm guessing the Maven Shade > Plugin is making assumptions about the value of {{build.finalName}} instead > of using the actual value of {{{}build.finalName{}}}. > I have not yet done further investigations or tested with the latest version > of the plugin. (I think I saw that a newer version has been released.) > Nevertheless I wanted to record this bug while I have all the necessary > windows open, before I stop for lunch and forget how all these pieces fit > together. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (MSHADE-451) Shade plugin not using `build.finalName` to produce artifact with classifier.
[ https://issues.apache.org/jira/browse/MSHADE-451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17736920#comment-17736920 ] Michael Osipov commented on MSHADE-451: --- Hello human from the future: In which year will Windows 17 be released? > Shade plugin not using `build.finalName` to produce artifact with classifier. > - > > Key: MSHADE-451 > URL: https://issues.apache.org/jira/browse/MSHADE-451 > Project: Maven Shade Plugin > Issue Type: Bug >Affects Versions: 3.4.1 >Reporter: Garret Wilson >Priority: Major > > I'm using Maven 3.9.1 with Java 17 on Windows 17, and Maven Shade Plugin > 3.4.1. > I'm using a technique which I described in MNG-7815 which allows me to easily > set the base filename of the generated artifacts in {{{}target/{}}}. > # In a separate parent pom ("Root POM") in the {{}} section I > set a property > {{{}${project.artifactId}{}}}. > # In the {{}} section I set > {{{}${build.finalBaseName}-${project.version}{}}}. > Let's suppose my project (which inherits from Root POM) has its own child > project with an {{{}bar{}}}. Normally because of the > default Maven {{{}build.finalName{}}}, setting, the target artifacts will be > e.g.: > * {{bar-1.2.3.jar}} > * {{bar-1.2.3-javadoc.jar}} > However with the configuration I described above, I merely need to set the > following property in the child project: > {code:xml} > foo-${project.artifactId} > {code} > Now my artifacts are generated with these names, just like I want: > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > However the Maven Shade Plugin seems to be ignoring the final > {{build.finalName}} and just assuming that it is set to the > {{{}${project.artifactId}-$\{project.version{ (which is the Maven > default). For example let's say I add the following to my Maven Shade Plugin > {{{}{}}}: > {code:xml} > true > aws-lambda > {code} > I would expect the classifier to be added to the {{build.finalName}} (which > is now {{{}foo-bar-1.2.3{}}})—after all, the Javadoc plugin does this just > fine. However I get this: > * {{bar-aws-lambda-1.2.3.jar}} > * {{foo-bar-1.2.3.jar}} > * {{foo-bar-1.2.3-javadoc.jar}} > {{bar-aws-lambda-1.2.3.jar}} should be {{foo-bar-aws-lambda-1.2.3.jar}} > (compare with the other generated artifacts). I'm guessing the Maven Shade > Plugin is making assumptions about the value of {{build.finalName}} instead > of using the actual value of {{{}build.finalName{}}}. > I have not yet done further investigations or tested with the latest version > of the plugin. (I think I saw that a newer version has been released.) > Nevertheless I wanted to record this bug while I have all the necessary > windows open, before I stop for lunch and forget how all these pieces fit > together. -- This message was sent by Atlassian Jira (v8.20.10#820010)