---- Doug Donohoe <[EMAIL PROTECTED]> schrieb: > Hi Maven Community: > > I have added this dependency in my POM: > > <dependency> > <groupId>javax.mail</groupId> > <artifactId>mail</artifactId> > <version>1.4.1</version> > </dependency> > > Which is retrieved from java.net using this POM definition: > > <repositories> > <repository> > <id>java.net</id> > <url>http://download.java.net/maven/1</url> > <layout>legacy</layout> > </repository> > </repositories> > > The POM for javax.mail declares a dependency on the Java activation > framework. However, I am using Java 6 (1.6.0_02), which already > includes the activation framework. > > My question: Is there a way in maven to conditionally define a > dependency based on the JDK you are using? > > If there is, what is the best way for me to use such a mechanism. > Ideally, the POM at java.net would be updated, but assuming I can't > figure out how to get them to update that, how do I override there POM? >
Try defining a profile called "java6" in your pom. Set its activation section so it only activates for java1.6. Then in the profile define that problem dependency with scope=provided. I think that will do the job. Dependencies declared directly in a pom always override those pulled in transiently. That definitely occurs for version-numbers, and I *think* it works for scope too. Regards, Simon --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
