Hi Ben,

> Is there a well-known way to create an uber source jar? In other
> words, a jar of all the source code for a project and all its
> dependencies (or at least those that have a -sources.jar)?

Good question. The way I have done it is to explicitly enumerate all the
sources classifier JARs in a profile [1]. This is of course very yucky, and
I would love to know if there is a better way.

I definitely suggest you avoid uber-JARs (with or without embedded sources)
when possible, though; for a rationale, see http://imagej.net/Uber-JAR.

Regards,
Curtis

[1] https://github.com/imagej/imagej/blob/imagej-2.0.0-rc-
59/pom.xml#L395-L626

--
Curtis Rueden
LOCI software architect - https://loci.wisc.edu/software
ImageJ2 lead, Fiji maintainer - https://imagej.net/User:Rueden


On Wed, Mar 8, 2017 at 4:05 PM, Ben Tatham <bentat...@nanometrics.ca> wrote:

> Is there a well-known way to create an uber source jar? In other words, a
> jar of all the source code for a project and all its dependencies (or at
> least those that have a -sources.jar)?
>
> I've looked into doing it with the maven-assembly-plugin, but using a
> dependencySet with includes of *.*.*.sources.* doesn't work because those
> are not actually dependencies of the project.
>
> I perhaps could look into using dependency:sources, and specifying an
> alternate repository to download them into (in target, eg), and then use a
> fileSet of maven-assembly-plugin to add them all, but there must be a
> better way...
>
> Thanks,
> Ben
> --
> --
> Ben Tatham
> Software Architect
>
> *Nano**metrics* *Inc.*
>
> Ottawa * I*  Calgary  *I*  Houston  *I*  Beijing
>
> T: +1 613 505 5065  *I*  bentat...@nanometrics.ca
>  www.nanometrics.ca  *I  *www.microseismicmonitoring.com
>
> This message is intended exclusively for the individual or entity to which
> it is addressed. This communication may contain information that is
> proprietary, privileged, confidential or otherwise legally exempt from
> disclosure. If you are not the named addressee, or have been inadvertently
> and erroneously referenced in the address line, you are not authorized to
> read, print, retain, copy or disseminate this message or any part of it. If
> you have received this message in error, please notify the sender
> immediately by e-mail and delete all copies of the message.
>

Reply via email to