I tried this and it didn't work, even a little.

See https://github.com/benson-basis/auto-version-maven-extension.

My extension is never called, whether I put it into .mvn or the maven
home lib/ext directory. (Proved by running mvnDebug, setting a
breakpoint, and attaching a debugger).



On Wed, Mar 9, 2016 at 3:24 PM, Benson Margulies <bimargul...@gmail.com> wrote:
> On Wed, Mar 9, 2016 at 3:20 PM, Stephen Connolly
> <stephen.alan.conno...@gmail.com> wrote:
>> On Wednesday, 9 March 2016, Benson Margulies <bimargul...@gmail.com> wrote:
>>
>>> On Wed, Mar 9, 2016 at 8:51 AM, Tamás Cservenák <ta...@cservenak.net
>>> <javascript:;>> wrote:
>>> > I assume it should be this (instead of spy):
>>> > http://maven.apache.org/examples/maven-3-lifecycle-extensions.html
>>> >
>>> > And instead of starting beer machine, it can inject the value into the
>>> > session that you got from whenever...
>>>
>>> I don't think this can work as a thing configured in the POM. Unless
>>> these items can be dropped into the ext directory instead of
>>> configured in the the pom as an extension. Is that the case in general
>>> that the ext dir is the same thing as declaring in the POM as an
>>> extension?
>>
>>
>> That's where the .mvn folder as an extension loading mechanism kicks in
>
> What version did that show up in? Prior, it has to be in a dir in the
> maven home, right?
>
>>
>>
>>>
>>>
>>> >
>>> > maven related changes merely laxed the validation to allow those three
>>> > expressions in version, but does not provide anything as "source" for
>>> those.
>>> >
>>> > On Wed, Mar 9, 2016 at 2:44 PM Stephen Connolly <
>>> > stephen.alan.conno...@gmail.com <javascript:;>> wrote:
>>> >
>>> >> I have no clue... that is a different question we should ask of the
>>> person
>>> >> who implemented this functionality
>>> >>
>>> >> On 9 March 2016 at 13:40, Benson Margulies <bimargul...@gmail.com
>>> <javascript:;>> wrote:
>>> >>
>>> >> > On Tue, Mar 8, 2016 at 2:28 PM, Stephen Connolly
>>> >> > <stephen.alan.conno...@gmail.com <javascript:;>> wrote:
>>> >> > > In the .mvn folder put an extension that contributes the ${rev}
>>> >> property
>>> >> > > based on whatever you seem safe
>>> >> >
>>> >> > Stephen, can you please offer some details? Just what sort of
>>> >> > extension? An event spy that sees session start? Something else? Does
>>> >> > this require 3.3.x  or does it work with 3.2.5?
>>> >> >
>>> >> > >
>>> >> > > Then just have the project version include the ${rev} at the
>>> >> appropriate
>>> >> > > place
>>> >> > >
>>> >> > > On Tuesday 8 March 2016, Gary Gregory <garydgreg...@gmail.com
>>> <javascript:;>> wrote:
>>> >> > >
>>> >> > >> On Mon, Mar 7, 2016 at 6:53 PM, Eric B <ebenza...@gmail.com
>>> <javascript:;>
>>> >> > <javascript:;>>
>>> >> > >> wrote:
>>> >> > >>
>>> >> > >> > The first question I have to ask is what you are trying to
>>> >> accomplish
>>> >> > >> with
>>> >> > >> > your continuous-delivery?
>>> >> > >>
>>> >> > >>
>>> >> > >> We have a Maven multi-module build which has thousands of unit
>>> tests.
>>> >> We
>>> >> > >> use Bamboo for CI and if we get a green build that means that all
>>> the
>>> >> > tests
>>> >> > >> pass of course and that we successfully deployed the build to our
>>> repo
>>> >> > (we
>>> >> > >> use Artifactory). We use the Maven's deploy to deploy, not the
>>> release
>>> >> > >> plugin.
>>> >> > >>
>>> >> > >> At this point anyone can use the built product out of Bamboo's
>>> saved
>>> >> > >> artifacts or Artifactory: our internal/external consultants, sales
>>> >> > >> engineers, formal QA, other downstream, products, and so on. It's
>>> up
>>> >> to
>>> >> > the
>>> >> > >> PO to decide when to slap a new major or minor version label and
>>> >> he/she
>>> >> > can
>>> >> > >> do at anytime.
>>> >> > >>
>>> >> > >> From development's POV, a green build is a released product, with a
>>> >> > version
>>> >> > >> for example 3.1.201601070101 (3.1.YYYYMMDDHHMM). We used to have
>>> the
>>> >> SVN
>>> >> > >> version number as the maintenance version part but we are
>>> switching to
>>> >> > Git
>>> >> > >> soon, hence the move to timestamps.
>>> >> > >>
>>> >> > >> Our parent POM contains what is considered a Maven "hack":
>>> >> > >>
>>> >> > >>   <properties>
>>> >> > >>
>>> >> > >>
>>> >> >
>>> <maven.build.timestamp.format>yyyyMMddHHmm</maven.build.timestamp.format>
>>> >> > >>     <version.major>3</version.major>
>>> >> > >>     <version.minor>1</version.minor>
>>> >> > >>     <version.main>${version.major}.${version.minor}</version.main>
>>> >> > >>     <revision>${maven.build.timestamp}</revision>
>>> >> > >>     <dv.version>${version.main}.${revision}</dv.version>
>>> >> > >>
>>> >> > >> Each module then has:
>>> >> > >>
>>> >> > >> <version>${dv.version}</version>
>>> >> > >>
>>> >> > >> What is the Maven way to achieve this goal?
>>> >> > >>
>>> >> > >> Gary
>>> >> > >>
>>> >> > >>
>>> >> > >>
>>> >> > >> > Are you trying to put snapshot versions into a
>>> >> > >> > production/release state?
>>> >> > >> >
>>> >> > >> > The biggest issue I have noticed with teams is the
>>> misunderstanding
>>> >> of
>>> >> > >> how
>>> >> > >> > SNAPSHOTs work, or their purpose in the development process.
>>> Either
>>> >> > >> teams
>>> >> > >> > want to release applications in SNAPSHOT mode, or release code
>>> that
>>> >> is
>>> >> > >> > essentially in SNAPSHOT (ie: development) mode, but with fixed
>>> >> version
>>> >> > >> > numbers.  But instead of changing version numbers, they use
>>> >> something
>>> >> > >> like
>>> >> > >> > a timestamp to increment version numbers automatically.  But at
>>> the
>>> >> > end
>>> >> > >> of
>>> >> > >> > it all, it kind of contravenes maven's versioning concept.
>>> >> > >> >
>>> >> > >> > Normally, if your artifact is a work in progress, you should
>>> just be
>>> >> > >> using
>>> >> > >> > a SNAPSHOT.  If you are looking to make a real release, then you
>>> >> > should
>>> >> > >> be
>>> >> > >> > promoting your code from a SNAPSHOT to a fixed version.
>>> Generally,
>>> >> > the
>>> >> > >> > concept of continuous-delivery should only apply when in a
>>> SNAPSHOT
>>> >> > mode,
>>> >> > >> > since anything else isn't changing (ie: a fixed release doesn't
>>> need
>>> >> > to
>>> >> > >> be
>>> >> > >> > re-delivered).
>>> >> > >> >
>>> >> > >> > So then that begs the question why you need to constantly change
>>> >> your
>>> >> > >> > version numbers during your development phase?
>>> >> > >> >
>>> >> > >> > And if the goal is truly to have fixed versions for some other
>>> team
>>> >> to
>>> >> > >> have
>>> >> > >> > access to a "stable" version of your artifact (ie: they can be
>>> >> > guaranteed
>>> >> > >> > that it isn't going to change as you continue to develop), you
>>> could
>>> >> > >> always
>>> >> > >> > use something like the maven-release-plugin to promote from
>>> SNAPSHOT
>>> >> > to a
>>> >> > >> > fixed version, and then re-open the next version as a SNAPSHOT.
>>> >> > >> (Although
>>> >> > >> > I know there are many dissenters against the release-plugin).
>>> >> > >> >
>>> >> > >> > Thanks,
>>> >> > >> >
>>> >> > >> > Eric
>>> >> > >> >
>>> >> > >> >
>>> >> > >> >
>>> >> > >> > On Mon, Mar 7, 2016 at 7:15 PM, Gary Gregory <
>>> >> garydgreg...@gmail.com <javascript:;>
>>> >> > >> <javascript:;>>
>>> >> > >> > wrote:
>>> >> > >> >
>>> >> > >> > > Is there a Maven-way to do continuous delivery then? As opposed
>>> >> > >> > > to continuous integration.
>>> >> > >> > >
>>> >> > >> > > Our current hack is to use the date as the maintenance version
>>> as
>>> >> a
>>> >> > >> > > variable for example 3.1.20160102
>>> >> > >> > >
>>> >> > >> > > G
>>> >> > >> > >
>>> >> > >> > > On Mon, Mar 7, 2016 at 11:18 AM, Eric B <ebenza...@gmail.com
>>> <javascript:;>
>>> >> > >> <javascript:;>> wrote:
>>> >> > >> > >
>>> >> > >> > > > I personally have a pet-peeve of using system variables to
>>> >> define
>>> >> > >> > version
>>> >> > >> > > > numbers; I find it is counter productive to the building of
>>> >> maven
>>> >> > >> > > > artifacts.  There is no traceability to determine  the actual
>>> >> > version
>>> >> > >> > of
>>> >> > >> > > an
>>> >> > >> > > > artifact once it has been built.  At least having a fixed
>>> >> version
>>> >> > >> > number
>>> >> > >> > > in
>>> >> > >> > > > the <version> element shows up in the META-INF/maven/../pom.*
>>> >> > files.
>>> >> > >> > > >
>>> >> > >> > > > Is using a variable for the version even a good idea?
>>> >> > >> > > >
>>> >> > >> > > > Thanks,
>>> >> > >> > > >
>>> >> > >> > > > Eric
>>> >> > >> > > >
>>> >> > >> > > >
>>> >> > >> > > > On Mon, Mar 7, 2016 at 4:04 AM, Stephen Connolly <
>>> >> > >> > > > stephen.alan.conno...@gmail.com <javascript:;>
>>> <javascript:;>> wrote:
>>> >> > >> > > >
>>> >> > >> > > > > only specific properties are permitted for expansion in
>>> XPath
>>> >> > paths
>>> >> > >> > > that
>>> >> > >> > > > > match the following regex
>>> >> > >> > > /project/(parent/)?(groupId|artifactId|version)
>>> >> > >> > > > >
>>> >> > >> > > > > On 2 March 2016 at 05:39, Raghu <raghunath...@yahoo.com
>>> <javascript:;>
>>> >> .invalid
>>> >> > >
>>> >> > >> > > wrote:
>>> >> > >> > > > >
>>> >> > >> > > > > > I have a POM with parent node as below: <parent>
>>> >> > >> > > > > > <groupId>com.test</groupId>
>>> >> > <artifactId>pom.parent</artifactId>
>>> >> > >> > > > > > <version>${test.version}</version>
>>> >> > >> > > > > > <relativePath>../scripts/pom.xml</relativePath> </parent>
>>> >> > >> > > > > > This used to work till maven 3.3.3 version - mvn clean
>>> >> > install.
>>> >> > >> > > > However,
>>> >> > >> > > > > > the version 3.3.9 throws error though. When I change the
>>> >> > version
>>> >> > >> > to a
>>> >> > >> > > > > value
>>> >> > >> > > > > > instead of the variable, it works fine.
>>> >> > >> > > > > > Won't maven support variable for version? Or is it a bug
>>> >> with
>>> >> > >> > 3.3.9?
>>> >> > >> > > > > > Appreciate your response...
>>> >> > >> > > > > > - regards,raghu
>>> >> > >> > > > >
>>> >> > >> > > >
>>> >> > >> > >
>>> >> > >> > >
>>> >> > >> > >
>>> >> > >> > > --
>>> >> > >> > > E-Mail: garydgreg...@gmail.com <javascript:;> <javascript:;> |
>>> >> ggreg...@apache.org <javascript:;>
>>> >> > >> <javascript:;>
>>> >> > >> > > Java Persistence with Hibernate, Second Edition
>>> >> > >> > > <http://www.manning.com/bauer3/>
>>> >> > >> > > JUnit in Action, Second Edition <
>>> http://www.manning.com/tahchiev/
>>> >> >
>>> >> > >> > > Spring Batch in Action <http://www.manning.com/templier/>
>>> >> > >> > > Blog: http://garygregory.wordpress.com
>>> >> > >> > > Home: http://garygregory.com/
>>> >> > >> > > Tweet! http://twitter.com/GaryGregory
>>> >> > >> > >
>>> >> > >> >
>>> >> > >>
>>> >> > >>
>>> >> > >>
>>> >> > >> --
>>> >> > >> E-Mail: garydgreg...@gmail.com <javascript:;> <javascript:;> |
>>> ggreg...@apache.org <javascript:;>
>>> >> > >> <javascript:;>
>>> >> > >> Java Persistence with Hibernate, Second Edition
>>> >> > >> <http://www.manning.com/bauer3/>
>>> >> > >> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>> >> > >> Spring Batch in Action <http://www.manning.com/templier/>
>>> >> > >> Blog: http://garygregory.wordpress.com
>>> >> > >> Home: http://garygregory.com/
>>> >> > >> Tweet! http://twitter.com/GaryGregory
>>> >> > >>
>>> >> > >
>>> >> > >
>>> >> > > --
>>> >> > > Sent from my phone
>>> >> >
>>> >> > ---------------------------------------------------------------------
>>> >> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
>>> <javascript:;>
>>> >> > For additional commands, e-mail: users-h...@maven.apache.org
>>> <javascript:;>
>>> >> >
>>> >> >
>>> >>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org <javascript:;>
>>> For additional commands, e-mail: users-h...@maven.apache.org
>>> <javascript:;>
>>>
>>>
>>
>> --
>> Sent from my phone

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to