Re: Possible to use maven API to get another projects binaries ?
Le mar. 7 mars 2017 12:49, Tushar Kapila a écrit : > So is my best bet to make a OS Process, collect the output and parse > the text to get files created like the following maven run snippet: > > > > Tests run: 3, Failures: 0, Errors: 0, Skipped: 0 > > [INFO] > [INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ CmdLineCalc --- > [INFO] Building jar: > > /Users/dev1/u/w/github/tgkprog/mavenSampleCalcCmdLineProject/CmdLineCalc/target/CmdLineCalc-1.jar > [INFO] META-INF/maven/s2n.sample.calc.cmdLine/CmdLineCalc/pom.xml > already added, skipping > [INFO] META-INF/maven/s2n.sample.calc.cmdLine/CmdLineCalc/pom.properties > already added, skipping > [INFO] > > [INFO] BUILD SUCCESS > [INFO] > > [INFO] Total time: 1.659 s > [INFO] Finished at: 2017-03-07T15:46:32+05:30 > [INFO] Final Memory: 16M/212M > [INFO] > > > --- > > if I see a BUILD SUCCESS, then work back a few lines to find jars, wars, > etc? > No, you should use Maven's API to get that information accurately. What I meant is that you can't know it without running the build.
Re: Possible to use maven API to get another projects binaries ?
Original Message From: Thomas BroyerSent: Tuesday, March 7, 2017 6:37 AMTo: Maven Users ListReply To: Maven Users ListSubject: Re: Possible to use maven API to get another projects binaries ?On Tue, Mar 7, 2017 at 11:59 AM Tushar Kapila <tgkp...@gmail.com> wrote:> hello>> I would like to get output binaries -how many/ name and output paths,> of an arbitrary maven project. It could have multiple ways / profiles> of being built (for example client jar, service app and front end war> file, the way to build these will be with me, provided in a build.json> file with in my own format, by the project maintainer.>> Is there a way, to not build the project, nor make a plugin, but some> how query maven, giving it the profile and the pom.xml as input, and> getting the list of project artifacts of the package step? In some it> could be the default jar, in others a war file but not with the> artifact's name (over ridden output file name).>> A project can have many profiles, if it has any, I will have> information on one or more profile names I'm interested in.>> Even if a plugin changes the exact name or path of a output binary,> will the maven API still know the new path? Let's assume its a well> behaved standard plugin like the jar plugin?>Due to the way Maven is designed, it has no knowledge of the outputs (noreven the inputs!) of a plugin, including whether and which artifact(s) willbe attached, without actually running the mojo.You could possibly infer it, but it would require precise knowledge of allthe plugins used in the build and how they use their configurations(including parsing plugin-specific files such as assembly descriptors forthe maven-assembly-plugin). - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Possible to use maven API to get another projects binaries ?
So is my best bet to make a OS Process, collect the output and parse the text to get files created like the following maven run snippet: Tests run: 3, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ CmdLineCalc --- [INFO] Building jar: /Users/dev1/u/w/github/tgkprog/mavenSampleCalcCmdLineProject/CmdLineCalc/target/CmdLineCalc-1.jar [INFO] META-INF/maven/s2n.sample.calc.cmdLine/CmdLineCalc/pom.xml already added, skipping [INFO] META-INF/maven/s2n.sample.calc.cmdLine/CmdLineCalc/pom.properties already added, skipping [INFO] [INFO] BUILD SUCCESS [INFO] [INFO] Total time: 1.659 s [INFO] Finished at: 2017-03-07T15:46:32+05:30 [INFO] Final Memory: 16M/212M [INFO] --- if I see a BUILD SUCCESS, then work back a few lines to find jars, wars, etc? On Tue, Mar 7, 2017 at 4:59 PM, Thomas Broyer wrote: > On Tue, Mar 7, 2017 at 11:59 AM Tushar Kapila wrote: > >> hello >> >> I would like to get output binaries -how many/ name and output paths, >> of an arbitrary maven project. It could have multiple ways / profiles >> of being built (for example client jar, service app and front end war >> file, the way to build these will be with me, provided in a build.json >> file with in my own format, by the project maintainer. >> >> Is there a way, to not build the project, nor make a plugin, but some >> how query maven, giving it the profile and the pom.xml as input, and >> getting the list of project artifacts of the package step? In some it >> could be the default jar, in others a war file but not with the >> artifact's name (over ridden output file name). >> >> A project can have many profiles, if it has any, I will have >> information on one or more profile names I'm interested in. >> >> Even if a plugin changes the exact name or path of a output binary, >> will the maven API still know the new path? Let's assume its a well >> behaved standard plugin like the jar plugin? >> > > Due to the way Maven is designed, it has no knowledge of the outputs (nor > even the inputs!) of a plugin, including whether and which artifact(s) will > be attached, without actually running the mojo. > You could possibly infer it, but it would require precise knowledge of all > the plugins used in the build and how they use their configurations > (including parsing plugin-specific files such as assembly descriptors for > the maven-assembly-plugin). -- Regards Tushar Kapila - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Possible to use maven API to get another projects binaries ?
On Tue, Mar 7, 2017 at 11:59 AM Tushar Kapila wrote: > hello > > I would like to get output binaries -how many/ name and output paths, > of an arbitrary maven project. It could have multiple ways / profiles > of being built (for example client jar, service app and front end war > file, the way to build these will be with me, provided in a build.json > file with in my own format, by the project maintainer. > > Is there a way, to not build the project, nor make a plugin, but some > how query maven, giving it the profile and the pom.xml as input, and > getting the list of project artifacts of the package step? In some it > could be the default jar, in others a war file but not with the > artifact's name (over ridden output file name). > > A project can have many profiles, if it has any, I will have > information on one or more profile names I'm interested in. > > Even if a plugin changes the exact name or path of a output binary, > will the maven API still know the new path? Let's assume its a well > behaved standard plugin like the jar plugin? > Due to the way Maven is designed, it has no knowledge of the outputs (nor even the inputs!) of a plugin, including whether and which artifact(s) will be attached, without actually running the mojo. You could possibly infer it, but it would require precise knowledge of all the plugins used in the build and how they use their configurations (including parsing plugin-specific files such as assembly descriptors for the maven-assembly-plugin).
Possible to use maven API to get another projects binaries ?
hello I would like to get output binaries -how many/ name and output paths, of an arbitrary maven project. It could have multiple ways / profiles of being built (for example client jar, service app and front end war file, the way to build these will be with me, provided in a build.json file with in my own format, by the project maintainer. Is there a way, to not build the project, nor make a plugin, but some how query maven, giving it the profile and the pom.xml as input, and getting the list of project artifacts of the package step? In some it could be the default jar, in others a war file but not with the artifact's name (over ridden output file name). A project can have many profiles, if it has any, I will have information on one or more profile names I'm interested in. Even if a plugin changes the exact name or path of a output binary, will the maven API still know the new path? Let's assume its a well behaved standard plugin like the jar plugin? Are there any samples for this? -- Regards Tushar Kapila - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org