geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Kulp <dk...@apache.org>
Subject Re: Could we use the maven-remote-resources plugin to install the legal files?
Date Thu, 16 Aug 2007 17:02:12 GMT


On Wednesday 15 August 2007, Jason Dillon wrote:
> Yup, this should work... assuming the plugin functions.  I just tried
> to hook it up from use in the Groovy m2 stuff and it puked up some
> NPE crapo. 

That's not good.   Sure you grabbed the latest version?    


> Also, I'm not sure that the LICENSE.txt and NOTICE.txt 
> generation stuff is going to fit our needs ASIS, but we can always
> get it fixed.

Yep.   You can either publish your own resource bundle or we can get a 
new apache-jar-resource-bundle version pushed if you need stuff there or 
a new version of remote-resources pushed if that's needed.


> On Aug 15, 2007, at 4:39 PM, David Jencks wrote:
> > It normally gets stuff from a "resource bundle" such as
> >
> > org.apache:apache-jar-resource-bundle:1.0
> >
> > which has the standard apache license and notice files in it.
> >
> > It installs them into at least normal and test jars, I haven't
> > checked about source jars.

Yep.  It does source jars and javadoc jars as well.   (providing you are 
using the latest versions of the javadoc plugin).


> > I think you can configure it to add local files as well but I
> > haven't figured out exactly how.  

I don't think that works.   It requires a full maven module name 
(groupid:artifactid:version) in order to work.    


> > If worst came to worst we could 
> > publish jars of our unusual notice files.  It might aggregate stuff
> > from the depenency's notice files, I'm not quite sure what the
> > documentation is saying.

No, it doesn't do that.   Basically, it can go through all the runtime 
dependencies and produces something like:

This product includes/uses software, JTA 1.0.1B 
(http://geronimo.apache.org/specs/geronimo-jta_1.0.1B_spec),
developed by Apache Software Foundation  (http://www.apache.org)
License: The Apache Software License, Version 2.0  
(http://www.apache.org/licenses/LICENSE-2.0.txt)

in the NOTICE file that gets put in the META-INF dir.   However, that's 
really just driven by the velocity template in the 
apache-jar-resource-bundle.    If you want your own format, you can 
create your own resource bundle.   The remote-resources plugin just adds 
all the dependencies as a List into the properties that are fed to 
velocity and velocity can do whatever it needs to do.

There are two "advanced" things that may be required:
1) Appending - the remote resources supports the ability to append local 
snippets (default location is src/main/appended-resources) to the stuff 
generated from velocity.   For CXF we use this to add some extra 
disclaimers and such like:
This product also includes schemas and specification developed by:
      - the W3C consortium (http://www.w3c.org)
      (http://www.w3.org/XML/1998/namespace)

2) Fixing bad poms - there a lot of crappy poms out there that generate 
junk in the NOTICE files.   Poms that don't include the organization, 
license, or sometimes even a real name.   RemoteResources does support 
the ability to merge in some corrected data.   CXF does this to 
workaround the fact that most of Sun's poms are very minimal.


Enjoy!
Dan

> > I think using a single standard copy of the license/notice files
> > would be a lot more pleasant than having a copy in each dir, and
> > unusual modules would be easier to spot.
> >
> > thanks
> > david jencks



-- 
J. Daniel Kulp
Principal Engineer
IONA
P: 781-902-8727    C: 508-380-7194
daniel.kulp@iona.com
http://www.dankulp.com/blog

Mime
View raw message