Return-Path: X-Original-To: apmail-ant-ivy-user-archive@www.apache.org Delivered-To: apmail-ant-ivy-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A7DE863E1 for ; Tue, 26 Jul 2011 01:18:44 +0000 (UTC) Received: (qmail 80888 invoked by uid 500); 26 Jul 2011 01:18:44 -0000 Delivered-To: apmail-ant-ivy-user-archive@ant.apache.org Received: (qmail 80799 invoked by uid 500); 26 Jul 2011 01:18:43 -0000 Mailing-List: contact ivy-user-help@ant.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ivy-user@ant.apache.org Delivered-To: mailing list ivy-user@ant.apache.org Received: (qmail 80791 invoked by uid 99); 26 Jul 2011 01:18:42 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 26 Jul 2011 01:18:42 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of sprior@geekster.com designates 99.153.139.110 as permitted sender) Received: from [99.153.139.110] (HELO geekster.com) (99.153.139.110) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 26 Jul 2011 01:18:35 +0000 Received: from [192.168.0.6] (stevepad [192.168.0.6]) by geekster.com (8.12.1/8.12.1) with ESMTP id p6Q0IDK9024628 for ; Mon, 25 Jul 2011 20:18:13 -0400 Message-ID: <4E2E15CD.6070906@geekster.com> Date: Mon, 25 Jul 2011 21:18:05 -0400 From: Steve Prior User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20110624 Thunderbird/5.0 MIME-Version: 1.0 To: ivy-user@ant.apache.org Subject: Re: container supplied jars excluded in ivy References: <4E2C3644.8030109@geekster.com> <5255155122564238197@unknownmsgid> <4E2C684B.3010105@geekster.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org > Odd, for me the inverse is true. I need the most things on my classpath at > test time [servlet spec, junit], fewer at compile [servlet spec], and fewest > at run time [just my war]. > > Here's the snippet of my configurations, and their mapping. I use > externalized configuration so there's added confs for configuration and > externalized WSDLs.. > > defaultconfmapping="runtime->runtime(*);config->config(*);test->runtime(*);compile->runtime(*)"> > > > > > > description="anything necessary to compile"/> > description="anything needed to run unit tests"/> > Those configs still seem odd to me because for example when using Hibernate there are certainly fewer jars required to compile than run (logging for example). I thought about this war problem a lot and came up with: defaultconfmapping="compile->compile(default); runtime->runtime(default); war->runtime(default)" Now I have removed all mention of a war configuration for everything that is not actually a webapp (I tried it the other way and it was a mess). Here is one of my new ivy.xml files: The new thing for me is to add the block of excludes which strip out all of the shared jars on my local Tomcat installations, but do so without needing to know which dependency (if at all) brought them into the mix - this was a new trick I just found out. Now I REALLY wanted to be even a little more clever and put that block of excludes in a file in my ivy.settings.dir and include them into place, but it turns out the include directive isn't allowed there (nuts). That would have been an especially deluxe solution since I could have had different include files for different server setups in my environment (Tomcat, JBoss, whatever). But at least I can standardize this block and rubber stamp it on my web project ivy.xml's without having to think about it. If anyone has some more fantastic tweaks I'm all EARs... Steve