While at ApacheCon last week, I talked to Jarek Gawor a bit and then followed 
up with a quick conversation with Brett about a problem that is soon going to 
hit CXF/Axis2/Geronimo.

Basically, we're going to need a mechanism to easily "endorse" a few api jars 
when we call javac and when surefire runs.     I'm ok with limiting the 
endorsing to when those plugins are in their "fork" mode.  There are a few 
options that could be pursued:

1) Require all developers to drop some jars in jre/lib/endorsed.   That really 
sucks.  Not exactly viable, IMO.

2) Require all devs to copy the jars someplace and add -Djava.endorsed.dirs=.. 
to their MAVEN_OPTS.    Also sucks.

3) In all modules, configure dependency:copy to copy the artifacts into a dir 
in target, then add the -D thing as system flags for compiler plugin and 
surefire.  This is better than (2) as it can be all automatic in the poms, but 
it's a ton of configuration if dealing with a lot of poms and projects and 
such.

4) Add some mechanism to compiler and surefire (and maybe others) to do some 
of (3) automatically.   I'm thinking something like:

<plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-compiler-plugin</artifactId>
       <configuration>
            <endorsedArtifacts>
                <endorsedArtifact>
                      <groupId>...</groupId>
                      <artifactId>...</artifactId>
                      <version>....</version>
                </endorsedArtifact>
            </endorsedArtifacts>
       </configuration>
</plugin>

and similar configuration for surefire.   Maybe make <version> optional and it 
would pick up a version from a dependency.  

5) Maybe some extension to the ToolChains stuff (which I don't know enough 
about, need to dig further if this is viable) to handle this.

Anyway, does anyone have any other thoughts?   

-- 
Daniel Kulp
dk...@apache.org
http://www.dankulp.com/blog

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to