We are using maven 3.0.3 and have problems using property values defined in our local settings.xml for specifying systemPath values for system-scoped dependencies. It seems this possibility has been removed in maven 3.
The system-scoped variable is necessary because we depend directly on a third party application server jar file which now has hard coded dependency jars listed in its MANIFEST. It is simply not practical to install these (several dozen - perhaps hundreds) jars into our remote Maven repository. The problem is serious because the pom files which use this system-scoped dependency do not pass validation when parsed by the reactor, preventing any transitive dependencies from being resolved in child projects. The current workaround is to define these properties in our parent pom instead, but this is not ideal since the values are environment-specific in nature and should not be hard coded in the pom. I wonder why this has changed in maven 3 and what then is the best practice to handle a situation like ours (it must be a common scenario)? As a side note we actually discovered this on computers running maven 2.2.1 but using m2eclipse. M2eclipse seems to use an embedded snapshot version of maven 3 for its dependency resolution (we use m2eclipse 12.0.20101115-1102). It has worked perfectly for a long time but just recently started to exhibit this behaviour. We don't really know what has triggered this but we are guessing that m2eclipse perhaps updated itself with a new snapshot version of maven 3 - not really sure have m2eclipse works regarding this. I appreciate any help, /Bengt
