From mboxrd@z Thu Jan 1 00:00:00 1970 From: BCG Subject: Re: What would a Maven build system be like? Date: Mon, 29 Feb 2016 12:09:21 -0500 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:33671) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aaRKD-0006rg-O7 for guix-devel@gnu.org; Mon, 29 Feb 2016 12:09:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aaRK7-0008AN-NT for guix-devel@gnu.org; Mon, 29 Feb 2016 12:09:37 -0500 Received: from smtp5.hushmail.com ([65.39.178.142]:35859) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aaRK7-00089t-FV for guix-devel@gnu.org; Mon, 29 Feb 2016 12:09:31 -0500 Received: from smtp5.hushmail.com (localhost [127.0.0.1]) by smtp5.hushmail.com (Postfix) with SMTP id 70171201DC for ; Mon, 29 Feb 2016 17:09:28 +0000 (UTC) Received: from smtp.hushmail.com (w7.hushmail.com [65.39.178.32]) by smtp5.hushmail.com (Postfix) with ESMTP for ; Mon, 29 Feb 2016 17:09:28 +0000 (UTC) In-Reply-To: List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org 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 t= o > generate this dynamically rather than change the prefix for Java > libraries to =E2=80=9C$out/maven-repo/=E2=80=9D 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=20 repository layout ever changing since Maven 2 was released, although I=20 could be wrong about that. One thing you may want to look at is the "maven-ant-tasks" Ant plugin her= e: https://maven.apache.org/ant-tasks/ This allows you to take artifacts built outside of Maven and install=20 them into a Maven repository layout. The Maven repository layout is the=20 defacto standard these days for all major Java build systems these days,=20 so create a folder structure with that layout for Guix might be a great=20 choice. Other Java dependency managers support Maven repositories as well,=20 including Apache Ivy (http://ant.apache.org/ivy/) and Gradle=20 (http://gradle.org/why/robust-dependency-management/). As a Java developer, my gut tells me that it is worth exploring putting=20 Guix's Java packages get put into a Maven repository layout by=20 default... Maven is notoriously difficult to bend to your will otherwise = :) -- Ben