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 46C8F95F3 for ; Wed, 9 May 2012 01:46:19 +0000 (UTC) Received: (qmail 49077 invoked by uid 500); 9 May 2012 01:46:19 -0000 Delivered-To: apmail-ant-ivy-user-archive@ant.apache.org Received: (qmail 48997 invoked by uid 500); 9 May 2012 01:46:19 -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 48989 invoked by uid 99); 9 May 2012 01:46:18 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 09 May 2012 01:46:18 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [209.85.160.45] (HELO mail-pb0-f45.google.com) (209.85.160.45) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 09 May 2012 01:46:08 +0000 Received: by pbbro12 with SMTP id ro12so11854760pbb.4 for ; Tue, 08 May 2012 18:45:46 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:x-gm-message-state; bh=BqVxfTHyuOyvPRZMatRwUGCOfS9Vv7r/zWg4ciAkgm8=; b=oC98CLZsyQYVkwUcDts4FZR+vZwybhlp9k0JKURx+j8ZofIlhCaEKJF4FT8aIY6QeG SEGPALgQRTZeC6YFZfkS0KpT3/+A05JO0EuJb4s/C6NEY2py9JIg71gbs251KTFcF8Rk 8qLnLj9LZ2mS80oHUQtdhJzTv2xHoHarYVtzkHNVN72CjK1j/Xf9hClRnkM1LJUdgzyj RmSsknljbihkQpkA2FN44+Xj52Z+MVBeuuUc5kA5H5PE1u0AsefPTNq7xgAvb8xKVFnq 5AySfaVa1uH0hNJimCSydE0MFwkKSACyAfnH8JgPK3Z1IIhqfsX9aU5t7phSbef/Eioi FyDg== Received: by 10.68.200.166 with SMTP id jt6mr3330414pbc.119.1336527946494; Tue, 08 May 2012 18:45:46 -0700 (PDT) Received: from [192.168.0.2] ([72.2.59.171]) by mx.google.com with ESMTPS id iu6sm4216459pbc.33.2012.05.08.18.45.45 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 08 May 2012 18:45:45 -0700 (PDT) Message-ID: <4FA9CC48.5030403@wmode.com> Date: Tue, 08 May 2012 18:45:44 -0700 From: Troy Kinsella User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 To: ivy-user@ant.apache.org Subject: Ivy not resolving transitive dependencies Content-Type: multipart/alternative; boundary="------------070602090302030100040804" X-Gm-Message-State: ALoCoQmsopTlbooCuSadKJBxx8QsxW5DLqyLGmYad9iS+CqGOhqb85QiL1rNLmB0DT0zXyX81o5w --------------070602090302030100040804 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi, I'm new to Ivy and I think I'm fumbling on what I think is a unique Ivy set-up... Facts: - I have three modules: ModuleA depends on ModuleB depends on ModuleC. - Resolving dependencies of ModuleB works correctly. - I am building JavaScript modules where a module may depend on a "source" artifact of another module (as opposed to a binary). - I am trying to mimic Maven's SNAPSHOT version convention - Artifacts are published to a company-internal "shared" Nexus repository - I have been clearing the ivy cache continually as I change things - I have read every Ivy documentation page about 10 times each :) Problems: - I'm having trouble resolving transitive dependencies, and I'm unsure where to start troubleshooting. - Not sure if there is merit or benefit to mimicking Maven's SNAPSHOT version convention. Is it getting in the way? - I'm not sure if repository layout is an issue. - I'm not sure if I'm using configurations correctly. - I'd like to _not_ have to specify the exact artifact in my dependencies, but it seems I need to to work with "source" artifacts. Questions: - How do I solve the transitive dependency resolution issue? - Is there a better way to configure Ivy to achieve the equivalent behaviour? - Does Ivy have special handling of certain artifact types, such as the default (binary, I guess), "sources", or "javadoc"? - Are there any best practices that I am blatantly violating? Relevant configuration files: ===== ivysettings.xml ===== ===== ivysettings-shared.xml ===== ===== ModuleC ivy.xml ===== ===== ModuleB ivy.xml ===== ===== ModuleA ivy.xml ===== ====== When I publish ModuleC, it results in the following files: [ivy:publish] published ModuleC-jsdoc to http://host/nexus/content/repositories/snapshots/com/company/ModuleC/1.0-SNAPSHOT/ModuleC-jsdoc-1.0-SNAPSHOT.zip [ivy:publish] published ModuleC-source to http://host/nexus/content/repositories/snapshots/com/company/ModuleC/1.0-SNAPSHOT/ModuleC-source-1.0-SNAPSHOT.jar [ivy:publish] published ivy to http://host/nexus/content/repositories/snapshots/com/company/ModuleC/1.0-SNAPSHOT/ivy-1.0-SNAPSHOT.xml When I publish ModuleB, it results in the following files: [ivy:publish] published ModuleB to http://host/nexus/content/repositories/snapshots/com/company/ModuleB/1.0-SNAPSHOT/ModuleB-1.0-SNAPSHOT.jar [ivy:publish] published ModuleB-source to http://host/nexus/content/repositories/snapshots/com/company/ModuleB/1.0-SNAPSHOT/ModuleB-source-1.0-SNAPSHOT.jar [ivy:publish] published ivy to http://host/nexus/content/repositories/snapshots/com/company/ModuleB/1.0-SNAPSHOT/ivy-1.0-SNAPSHOT.xml I am resolving dependencies in ant like so: After trying to build ModuleA, I only have the following under ModuleA/lib: ModuleB-source.jar I also need ModuleC-source.jar in order to build ModuleA. Thanks, Troy Kinsella --------------070602090302030100040804--