Ok got my mistake....so surely miss another point: why not simply filtering the archetype pom, it is in src/main/resources and we have tomee.version, openejb.version etc... (it works and doesn't need any hack).
Romain Manni-Bucau Twitter: @rmannibucau Blog: http://rmannibucau.wordpress.com/ LinkedIn: http://fr.linkedin.com/in/rmannibucau Github: https://github.com/rmannibucau 2014-07-23 14:50 GMT+02:00 Andy Gumbrecht <[email protected]>: > We're obviously looking at two different things here, so you need to check > it out and correct whatever you feel you need to. > > When I run generate I get the following pom now, which is exactly what it > should be: > > <?xml version="1.0" encoding="UTF-8"?> > <!-- > Licensed to the Apache Software Foundation (ASF) under one or more > contributor license agreements. See the NOTICE file distributed with > this work for additional information regarding copyright ownership. > The ASF licenses this file to You under the Apache License, Version 2.0 > (the "License"); you may not use this file except in compliance with > the License. You may obtain a copy of the License at > > http://www.apache.org/licenses/LICENSE-2.0 > > Unless required by applicable law or agreed to in writing, software > distributed under the License is distributed on an "AS IS" BASIS, > WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > implied. > See the License for the specific language governing permissions and > limitations under the License. > --> > <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" > http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > http://maven.apache.org/maven-v4_0_0.xsd"> > <modelVersion>4.0.0</modelVersion> > > <groupId>andy</groupId> > <artifactId>andy</artifactId> > <version>1.0-SNAPSHOT</version> > <packaging>war</packaging> > <name>andy TomEE Webapp</name> > <url>http://tomee.apache.org</url> > > <properties> > <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> > </properties> > > <dependencies> > <dependency> > <groupId>org.apache.openejb</groupId> > <artifactId>javaee-api</artifactId> > <version>6.0-6</version> > <scope>provided</scope> > </dependency> > > <!-- to test with TomEE and Arquillian --> > > <dependency> > <groupId>org.apache.openejb</groupId> > <artifactId>arquillian-tomee-remote</artifactId> > <version>1.7.0-SNAPSHOT</version> > > <scope>test</scope> > </dependency> > <dependency> > <groupId>org.jboss.arquillian.junit</groupId> > <artifactId>arquillian-junit-container</artifactId> > <version>1.1.5.Final</version> > > <scope>test</scope> > </dependency> > <dependency> > <groupId>junit</groupId> > <artifactId>junit</artifactId> > <version>4.11</version> > <scope>test</scope> > </dependency> > > <!-- to test with OpenEJB embedded and Arquillian > <dependency> > <groupId>org.apache.openejb</groupId> > <artifactId>arquillian-openejb-embedded-4</artifactId> > <version>4.7.0-SNAPSHOT</version> > > <scope>test</scope> > </dependency> > <dependency> > <groupId>org.jboss.arquillian.junit</groupId> > <artifactId>arquillian-junit-container</artifactId> > <version>1.1.2.Final</version> > > <scope>test</scope> > </dependency> > <dependency> > <groupId>junit</groupId> > <artifactId>junit</artifactId> > <version>4.11</version> > <scope>test</scope> > </dependency> > --> > </dependencies> > > <build> > <plugins> > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-compiler-plugin</artifactId> > <version>3.1</version> > </plugin> > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-surefire-plugin</artifactId> > <version>2.17</version> > </plugin> > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-war-plugin</artifactId> > <version>2.4</version> > <configuration> > <failOnMissingWebXml>false</failOnMissingWebXml> > </configuration> > </plugin> > > <plugin> > <groupId>org.apache.openejb.maven</groupId> > <artifactId>tomee-maven-plugin</artifactId> > <version>1.7.0-SNAPSHOT</version> > > <configuration> > <context>ROOT</context> > </configuration> > </plugin> > <plugin> > <groupId>org.apache.openjpa</groupId> > <artifactId>openjpa-maven-plugin</artifactId> > <version>2.3.0</version> > <configuration> > <includes>**/entities/*.class</includes> > <excludes>**/entities/XML*.class</excludes> > <addDefaultConstructor>true</addDefaultConstructor> > <enforcePropertyRestrictions>true</enforcePropertyRestrictions> > </configuration> > <executions> > <execution> > <id>enhancer</id> > <phase>process-classes</phase> > <goals> > <goal>enhance</goal> > </goals> > </execution> > </executions> > <dependencies> > <dependency> > <groupId>org.apache.openjpa</groupId> > <artifactId>openjpa</artifactId> > <!-- set the version to be the same as the level in your > runtime --> > <version>2.3.0</version> > </dependency> > </dependencies> > </plugin> > </plugins> > </build> > > <repositories> > <repository> > <id>apache-snapshot</id> > <name>Apache Snapshot Repository</name> > <url>https://repository.apache.org/content/groups/snapshots/</url> > </repository> > </repositories> > > </project> > > > > On 23/07/2014 14:44, Romain Manni-Bucau wrote: > >> that's why we use @version@ instead, no? >> >> >> >> Romain Manni-Bucau >> Twitter: @rmannibucau >> Blog: http://rmannibucau.wordpress.com/ >> LinkedIn: http://fr.linkedin.com/in/rmannibucau >> Github: https://github.com/rmannibucau >> >> >> 2014-07-23 14:41 GMT+02:00 Andy Gumbrecht <[email protected]>: >> >> No, you are not getting it. This is about modifying the pom.xml template >>> resource that needs the TomEE and OpenEJB versions hard coded at build >>> time >>> NOT the user defined ${version} that the user enters at mvn >>> archetype:generate. >>> Please, if you know of a better way of injecting the project versions >>> into >>> the template before the jar is built and deployed then please show me. >>> You >>> cannot use simple resource parsing as ${version} with get replaced, which >>> we don't want, because it's a template. >>> >>> It has NOTHING to do with default property/user overrides defined in the >>> archetype-metadata! >>> >>> >>> >>> On 23/07/2014 14:24, Romain Manni-Bucau wrote: >>> >>> Sorry I don't follow (maybe read too fast) >>>> >>>> but we can use requiredProperty ( >>>> http://maven.apache.org/archetype/maven-archetype-plugin/specification/ >>>> archetype-metadata.html), >>>> filter the descriptor to get correct default and allow then the user to >>>> override it. >>>> >>>> This is the way maven do it usually. Ant is a not common hack I'm still >>>> not >>>> sure we need. >>>> >>>> >>>> >>>> >>>> Romain Manni-Bucau >>>> Twitter: @rmannibucau >>>> Blog: http://rmannibucau.wordpress.com/ >>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau >>>> Github: https://github.com/rmannibucau >>>> >>>> >>>> 2014-07-23 14:20 GMT+02:00 Andy Gumbrecht <[email protected]>: >>>> >>>> No, it's not the same - you are thinking of the user defined/archtype >>>> >>>>> version - Please just try it and you will see what it wrong! >>>>> >>>>> >>>>> Andy. >>>>> >>>>> On 23/07/2014 14:15, Romain Manni-Bucau wrote: >>>>> >>>>> Yeah, but we should use the archetype to query the version, said >>>>> >>>>>> otherwise >>>>>> we shouldn't use ant since maven archetype provides this feature. >>>>>> >>>>>> Last note: since we release the archetype with tomee (which doesn't >>>>>> makes >>>>>> sense anymore btw) we should just hardcode the version linked to the >>>>>> release. >>>>>> >>>>>> >>>>>> >>>>>> Romain Manni-Bucau >>>>>> Twitter: @rmannibucau >>>>>> Blog: http://rmannibucau.wordpress.com/ >>>>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau >>>>>> Github: https://github.com/rmannibucau >>>>>> >>>>>> >>>>>> 2014-07-23 14:07 GMT+02:00 Andy Gumbrecht <[email protected]>: >>>>>> >>>>>> No, it is the template pom - Needs the correct tomee/openejb >>>>>> project >>>>>> >>>>>> versions for the plugins. It's fixed, try the old one - quite >>>>>>> useless >>>>>>> to a >>>>>>> newbie as the generated pom does not work - seems no one ever used >>>>>>> it? >>>>>>> >>>>>>> Andy >>>>>>> >>>>>>> >>>>>>> On 23/07/2014 13:48, Romain Manni-Bucau wrote: >>>>>>> >>>>>>> BTW not sure I follow what you do since maven archetype is able to >>>>>>> >>>>>>> handle >>>>>>>> it out of the box, why doing [VERSION]? >>>>>>>> >>>>>>>> + we should reuse pom of the archetype version with @version@ no? >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Romain Manni-Bucau >>>>>>>> Twitter: @rmannibucau >>>>>>>> Blog: http://rmannibucau.wordpress.com/ >>>>>>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau >>>>>>>> Github: https://github.com/rmannibucau >>>>>>>> >>>>>>>> >>>>>>>> 2014-07-23 13:45 GMT+02:00 Andy Gumbrecht <[email protected] >>>>>>>> >: >>>>>>>> >>>>>>>> Yea it,s a mistake, and no - It's supposed to be the placeholder >>>>>>>> for >>>>>>>> the >>>>>>>> >>>>>>>> user defined version. Fixing now! >>>>>>>> >>>>>>>>> Andy. >>>>>>>>> >>>>>>>>> >>>>>>>>> On 23/07/2014 13:34, Romain Manni-Bucau wrote: >>>>>>>>> >>>>>>>>> <version>1.0-SNAPSHOT</version>? >>>>>>>>> >>>>>>>>> not the first time I see something related to tomee you set to >>>>>>>>> >>>>>>>>>> 1.0-SNAPSHOT, isn't it 2? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Romain Manni-Bucau >>>>>>>>>> Twitter: @rmannibucau >>>>>>>>>> Blog: http://rmannibucau.wordpress.com/ >>>>>>>>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau >>>>>>>>>> Github: https://github.com/rmannibucau >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ---------- Forwarded message ---------- >>>>>>>>>> From: <[email protected]> >>>>>>>>>> Date: 2014-07-23 13:30 GMT+02:00 >>>>>>>>>> Subject: svn commit: r1612812 - in /tomee/tomee/trunk: ./ >>>>>>>>>> maven/tomee-webapp-archetype/pom.xml >>>>>>>>>> maven/tomee-webapp-archetype/src/main/resources/archetype- >>>>>>>>>> resources/pom.xml >>>>>>>>>> To: [email protected] >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Author: andygumbrecht >>>>>>>>>> Date: Wed Jul 23 11:30:16 2014 >>>>>>>>>> New Revision: 1612812 >>>>>>>>>> >>>>>>>>>> URL: http://svn.apache.org/r1612812 >>>>>>>>>> Log: >>>>>>>>>> Fix archetype-resources/pom.xml >>>>>>>>>> >>>>>>>>>> Modified: >>>>>>>>>> tomee/tomee/trunk/ (props changed) >>>>>>>>>> tomee/tomee/trunk/maven/tomee-webapp-archetype/pom.xml >>>>>>>>>> >>>>>>>>>> tomee/tomee/trunk/maven/tomee-webapp-archetype/src/main/ >>>>>>>>>> resources/archetype-resources/pom.xml >>>>>>>>>> >>>>>>>>>> Propchange: tomee/tomee/trunk/ >>>>>>>>>> ------------------------------------------------------------ >>>>>>>>>> ------------------ >>>>>>>>>> Merged /tomee/tomee/branches/tomee-1.7.x:r1612811 >>>>>>>>>> >>>>>>>>>> Modified: tomee/tomee/trunk/maven/tomee-webapp-archetype/pom.xml >>>>>>>>>> URL: >>>>>>>>>> http://svn.apache.org/viewvc/tomee/tomee/trunk/maven/tomee- >>>>>>>>>> webapp-archetype/pom.xml?rev=1612812&r1=1612811&r2=1612812& >>>>>>>>>> view=diff >>>>>>>>>> ============================================================ >>>>>>>>>> ================== >>>>>>>>>> --- tomee/tomee/trunk/maven/tomee-webapp-archetype/pom.xml >>>>>>>>>> (original) >>>>>>>>>> +++ tomee/tomee/trunk/maven/tomee-webapp-archetype/pom.xml Wed >>>>>>>>>> Jul >>>>>>>>>> 23 >>>>>>>>>> 11:30:16 2014 >>>>>>>>>> @@ -27,4 +27,28 @@ Licensed to the Apache Software Foundati >>>>>>>>>> >>>>>>>>>> <artifactId>tomee-webapp-archetype</artifactId> >>>>>>>>>> <name>OpenEJB :: Maven Plugins :: TomEE Webapp >>>>>>>>>> Archetype</name> >>>>>>>>>> + >>>>>>>>>> + <build> >>>>>>>>>> + <plugins> >>>>>>>>>> + <plugin> >>>>>>>>>> + <groupId>org.apache.maven.plugins</groupId> >>>>>>>>>> + <artifactId>maven-antrun-plugin</artifactId> >>>>>>>>>> + <executions> >>>>>>>>>> + <execution> >>>>>>>>>> + <id>remove-apps</id> >>>>>>>>>> + <phase>process-resources</phase> >>>>>>>>>> + <goals> >>>>>>>>>> + <goal>run</goal> >>>>>>>>>> + </goals> >>>>>>>>>> + <configuration> >>>>>>>>>> + <target> >>>>>>>>>> + <replace >>>>>>>>>> file="${project.build.directory}/classes/archetype- >>>>>>>>>> resources/pom.xml" >>>>>>>>>> token="[VERSION]" value="${project.version}"/> >>>>>>>>>> + </target> >>>>>>>>>> + </configuration> >>>>>>>>>> + </execution> >>>>>>>>>> + </executions> >>>>>>>>>> + </plugin> >>>>>>>>>> + </plugins> >>>>>>>>>> + </build> >>>>>>>>>> + >>>>>>>>>> </project> >>>>>>>>>> >>>>>>>>>> Modified: >>>>>>>>>> tomee/tomee/trunk/maven/tomee-webapp-archetype/src/main/ >>>>>>>>>> resources/archetype-resources/pom.xml >>>>>>>>>> URL: >>>>>>>>>> http://svn.apache.org/viewvc/tomee/tomee/trunk/maven/tomee- >>>>>>>>>> webapp-archetype/src/main/resources/archetype-resources/ >>>>>>>>>> pom.xml?rev=1612812&r1=1612811&r2=1612812&view=diff >>>>>>>>>> ============================================================ >>>>>>>>>> ================== >>>>>>>>>> --- >>>>>>>>>> tomee/tomee/trunk/maven/tomee-webapp-archetype/src/main/ >>>>>>>>>> resources/archetype-resources/pom.xml >>>>>>>>>> (original) >>>>>>>>>> +++ >>>>>>>>>> tomee/tomee/trunk/maven/tomee-webapp-archetype/src/main/ >>>>>>>>>> resources/archetype-resources/pom.xml >>>>>>>>>> Wed Jul 23 11:30:16 2014 >>>>>>>>>> @@ -42,7 +42,7 @@ >>>>>>>>>> <dependency> >>>>>>>>>> <groupId>org.apache.openejb</groupId> >>>>>>>>>> <artifactId>arquillian-tomee-remote</artifactId> >>>>>>>>>> - <version>${version}</version> >>>>>>>>>> + <version>1.0-SNAPSHOT</version> >>>>>>>>>> <scope>test</scope> >>>>>>>>>> </dependency> >>>>>>>>>> <dependency> >>>>>>>>>> @@ -104,13 +104,13 @@ >>>>>>>>>> <plugin> >>>>>>>>>> <groupId>org.apache.openejb.maven</groupId> >>>>>>>>>> <artifactId>tomee-maven-plugin</artifactId> >>>>>>>>>> - <version>${version}</version> >>>>>>>>>> + <version>[VERSION]</version> >>>>>>>>>> <configuration> >>>>>>>>>> <context>ROOT</context> >>>>>>>>>> </configuration> >>>>>>>>>> </plugin> >>>>>>>>>> <plugin> >>>>>>>>>> - <groupId>org.apache.openejb</groupId> >>>>>>>>>> + <groupId>org.apache.openjpa</groupId> >>>>>>>>>> <artifactId>openjpa-maven-plugin</artifactId> >>>>>>>>>> <version>2.3.0</version> >>>>>>>>>> <configuration> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> >>>>>>>>>> Andy Gumbrecht >>>>>>>>>> >>>>>>>>> http://www.tomitribe.com >>>>>>>>> [email protected] >>>>>>>>> https://twitter.com/AndyGeeDe >>>>>>>>> >>>>>>>>> TomEE treibt Tomitribe! | http://tomee.apache.org >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> >>>>>>>>> Andy Gumbrecht >>>>>>>> >>>>>>> http://www.tomitribe.com >>>>>>> [email protected] >>>>>>> https://twitter.com/AndyGeeDe >>>>>>> >>>>>>> TomEE treibt Tomitribe! | http://tomee.apache.org >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>> Andy Gumbrecht >>>>> >>>>> http://www.tomitribe.com >>>>> [email protected] >>>>> https://twitter.com/AndyGeeDe >>>>> >>>>> TomEE treibt Tomitribe! | http://tomee.apache.org >>>>> >>>>> >>>>> >>>>> -- >>> Andy Gumbrecht >>> >>> http://www.tomitribe.com >>> [email protected] >>> https://twitter.com/AndyGeeDe >>> >>> TomEE treibt Tomitribe! | http://tomee.apache.org >>> >>> >>> > -- > Andy Gumbrecht > > http://www.tomitribe.com > [email protected] > https://twitter.com/AndyGeeDe > > TomEE treibt Tomitribe! | http://tomee.apache.org > >
