On 02/29/2016 11:14 AM, Ricardo Wurmus wrote:
Since not every application uses Maven (or even the same version of
Maven), and I cannot yet be certain that the directory layout remains
the same across different versions of Maven, I think it would be best to
generate this dynamically rather than change the prefix for Java
libraries to “$out/maven-repo/” and then place the jars at the leaves of
this structure.
FWIW - I've been using Maven for 10 years and I can't recall the
repository layout ever changing since Maven 2 was released, although I
could be wrong about that.
One thing you may want to look at is the "maven-ant-tasks" Ant plugin here:
https://maven.apache.org/ant-tasks/
This allows you to take artifacts built outside of Maven and install
them into a Maven repository layout. The Maven repository layout is the
defacto standard these days for all major Java build systems these days,
so create a folder structure with that layout for Guix might be a great
choice.
Other Java dependency managers support Maven repositories as well,
including Apache Ivy (http://ant.apache.org/ivy/) and Gradle
(http://gradle.org/why/robust-dependency-management/).
As a Java developer, my gut tells me that it is worth exploring putting
Guix's Java packages get put into a Maven repository layout by
default... Maven is notoriously difficult to bend to your will otherwise :)
-- Ben