Yes, right.
 
Perhaps, using activation based on property/value is better. In each profile 
you define your dependency Management, the maven-compiler-plugin target :
 
 
<profile>
   <id>jdk1.4</id>
   <activation>
      <property>
          <name>jdk</name>
          <value>1.4</value>
      </property>
   </activation>
   <dependencyManagement>
       ...
   </dependencyManagement>
   <build>
       <pluginManagement>
           ... maven-compiler-plugin confugred with target 1.4
       </pluginManagment
   </buil>
</profile>
<profile>
   <id>jdk1.3</id>
   <activation>
      <property>
          <name>jdk</name>
          <value>1.3</value>
      </property>
   </activation>
   <dependencyManagement>
       ...
   </dependencyManagement>
   <build>
       <pluginManagement>
           ... maven-compiler-plugin confugred with target 1.3
       </pluginManagment
   </buil>
</profile>
 
You can add one of these profiles as the default one. 

 
_______________________________________________________________________________
Christophe DENEUX / Capgemini Sud / Méditerranée
Technical Leader
Tel: + 33 4 93 95 55 92 / www.capgemini.com <http://www.capgemini.com/> 
Porte de l'Arénas - Entrée B / 455 Promenade des Anglais / 06200 Nice / FRANCE
Join the Collaborative Business Experience
_______________________________________________________________________________
Please consider the environment and do not print this email unless absolutely 
necessary. Capgemini encourages environmental awareness.

________________________________

De: nicolas de loof [mailto:[EMAIL PROTECTED]
Date: mer. 05/09/2007 10:20
À: Maven Users List
Objet : Re: RE : how to declare a dependency that depends of target JRE ?



I know this jdk activation strategy but IMHO this is not safe :

I'm myself using Jdk 1.5 on my computer but set the maven-compiler-plugin
for target jre beeing 1.3 or 1.4. I don't want to change my JAVA_HOME evey
time I start a new project, and maven2 requires Java 1.4 so this strategy
cannot be used to build projects that target Java 1.3.

Nico.


2007/9/5, Deneux, Christophe <[EMAIL PROTECTED]>:
>
>
> Nicolas,
>
> You can defined profile according to the used JDK. In these profile you
> should defined a dependencyManagement in which you define your artifact
> version to use:
>
> <profile>
>    <id>jdk1.4</id>
>    <activation>
>       <jdk>1.4</jdk>
>    </activation>
>    <dependencyManagement>
>        ...
>    </dependencyManagement>
> </profile>
>
>
>
>
>
>
> _______________________________________________________________________________
> Christophe DENEUX / Capgemini Sud / Méditerranée
> Technical Leader
> Tel: + 33 4 93 95 55 92 / www.capgemini.com <http://www.capgemini.com/>
> Porte de l'Arénas - Entrée B / 455 Promenade des Anglais / 06200 Nice /
> FRANCE
> Join the Collaborative Business Experience
>
> _______________________________________________________________________________
> Please consider the environment and do not print this email unless
> absolutely necessary. Capgemini encourages environmental awareness.
>
> ________________________________
>
> De: nicolas de loof [mailto:[EMAIL PROTECTED]
> Date: mer. 05/09/2007 09:47
> À: Maven Users List
> Objet : how to declare a dependency that depends of target JRE ?
>
>
>
> Hello,
>
> I'm writing a shared utility project that uses backport-util-concurrent.
> This dependency has 3 versions, for java 1.2/1.3, java 1.4 and Java 5.
> How to set my POM dependencies so that projects that use my lib get the
> expected backport in classpath ?
> For now the only way I've found is to declare dependency on backport as
> optional.
>
> Nico.
>
>
>
>
> This message contains information that may be privileged or confidential
> and is the property of the Capgemini Group. It is intended only for the
> person to whom it is addressed. If you are not the intended recipient,  you
> are not authorized to read, print, retain, copy, disseminate,  distribute,
> or use this message or any part thereof. If you receive this  message in
> error, please notify the sender immediately and delete all  copies of this
> message.
>




This message contains information that may be privileged or confidential and is 
the property of the Capgemini Group. It is intended only for the person to whom 
it is addressed. If you are not the intended recipient,  you are not authorized 
to read, print, retain, copy, disseminate,  distribute, or use this message or 
any part thereof. If you receive this  message in error, please notify the 
sender immediately and delete all  copies of this message.

Reply via email to