Hi,

A short follow up question regarding my last one.
In the Edgent maven build, which I am working on, we need to produce java8, 
java7 and android versions of jars. This is done by running the 
retrolambda-maven-plugin on the classes when building the java7 version. To 
make the dependency resolution work correctly with all variants we decided to 
use the normal version number for the java8 output and add a suffix of “–java7” 
to the version in case of a java7 build (for SNAPSHOT versions the “-java7” is 
included between the version and the “SNAPSHOT”). In order to be able to switch 
the versions by selecting profiles, I used variables for the artifact versions.
As I know variables for versions of parent poms is a really bad idea (Don’t 
even know if it works), I setup the project to have constant versions in the 
parent poms and only use these for configuring the reactor and the plugins – no 
dependencies are handled here. The build is working nicey, unfortunately the 
build is outputting hundreds of warnings like this:

[WARNING] Some problems were encountered while building the effective model for 
org.apache.edgent.analytics:edgent-analytics-sensors:jar:1.2.0-SNAPSHOT
[WARNING] 'version' contains an expression but should be a constant. @ 
org.apache.edgent.analytics:edgent-analytics-sensors:${edgent.version}, 
/Users/christoferdutz/Projects/Apache/Edgent/incubator-edgent/analytics/sensors/pom.xml,
 line 31, column 12

Is there a “maven way” (TM) to achieve this sort of thing without the warnings?

Chris

Reply via email to