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
>
>

Reply via email to