ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xavier Hanin" <xavier.ha...@gmail.com>
Subject Ivy settings ant error
Date Wed, 27 Feb 2008 09:43:55 GMT
Hi,

In latest Ivy version we have changed the way to load settings, using a task
instead of a datatype, but still using an id attribute. The code of the task
is available here:
https://svn.apache.org/repos/asf/ant/ivy/core/trunk/src/java/org/apache/ivy/ant/IvyAntSettings.java

A user is complaining (see forwarded e-mail) about a warning message from
Ant:
Warning: Reference ivy.instance has not been set at runtime, but was
found during
build file parsing, attempting to resolve. Future versions of Ant may
support
referencing ids defined in non-executed targets.

Any idea what can be wrong? Is it related to our implementation of the
settings task? Any help from Ant gurus would be welcome :-)

Xavier



---------- Forwarded message ----------
From: Neil Lott <neilmatthewlott@yahoo.com>
Date: Sun, Feb 24, 2008 at 6:03 PM
Subject: ant error
To: Ivy User User <ivy-user@ant.apache.org>


I have multiple build.xml files that each import a common.xml file.

I also have a productbuild.xml file that imports the common.xml file
and makes antcalls on sets of build.xml files.

When I run my individual module build.xml everything works fine.

When I run my productbuild.xml file that makes antcall's to each
build.xml I see the following error:

Warning: Reference ivy.instance has not been set at runtime, but was
found during
build file parsing, attempting to resolve. Future versions of Ant may
support
referencing ids defined in non-executed targets.

Each build.xml will call the following macrodef regardless of whether
the build.xml file is executed standalone or from an antcall from the
productbuild.xml

       <macrodef name="ivy-init">
               <attribute name="ivy.file"/>
               <attribute name="ivy.lib.dir"/>
               <sequential>
                       <ivy:resolve file="@{ivy.file}"/>
                       <ivy:retrieve pattern="@{ivy.lib.dir}/[conf]/
[artifact]-[revision].[ext]" symlink="true"/>
               </sequential>
  </macrodef>

Since my ivy setting file doesn't change I make this call once in my
initialization target.

<target name="common-init">
....
               <ivy:settings id="ivy.instance" file="${ivy.settings.file}"
override="true"/>
</target>


Since we have a large project I have it so my common-init target is
called once when the product build.xml is started and then the
build.xmls are smart enough not to call it again.  But if I'm just
running my build.xml standalone then the build.xml knows to call
common-init target.

Here's the full ant log with verbose calling a build.xml file from the
productbuild.xml via an antcall


Warning: Reference ivy.instance has not been set at runtime, but was
found during
build file parsing, attempting to resolve. Future versions of Ant may
support
referencing ids defined in non-executed targets.
[ivy:settings] Loading jar:file:/Users/neil/Business/
SnowyRangeConsulting/projects/twc/thirdparty/apache-ant-1.7.0/lib/
ivy.jar!/org/apache/ivy/core/settings/ivy.properties
Override ignored for property "ivy.log.modules.in.use"
Override ignored for property "ivy.resolver.default.check.modified"
Override ignored for property "ivy.default.always.check.exact.revision"
Override ignored for property "ivy.retrieve.pattern"
Override ignored for property "ivy.configurations"
Override ignored for property "ivy.buildlist.ivyfilepath"
Override ignored for property "ivy.status"
Override ignored for property "ivy.resolve.default.type.filter"
Override ignored for property "ivy.project.dir"
Override ignored for property "ivy.dep.file"
Override ignored for property "ivy.settings.file"
Override ignored for property "ivy.report.output.pattern"
Override ignored for property "ivy.cache.ttl.default"
Override ignored for property "ivy.publish.src.artifacts.pattern"
Override ignored for property "ivy.deliver.ivy.pattern"
Override ignored for property "ivy.build.artifacts.dir"
Override ignored for property "ivy.checksums"
Override ignored for property "ivy.distrib.dir"
Override ignored for property "ivy.lib.dir"
[ivy:settings] :: loading settings :: file = /Users/neil/Business/
SnowyRangeConsulting/projects/twc/depot/server/releases/main-ivy/ivy-
settings.xml
[ivy:settings] settings loaded (8ms)
[ivy:settings]  default cache: /Users/neil/Business/
SnowyRangeConsulting/projects/twc/thirdparty/ivy/cache
[ivy:settings]  default resolver: chained
[ivy:settings]  -- 3 resolvers:
[ivy:settings]  chained [chain] [local, shared]
[ivy:settings]  local [file]
[ivy:settings]  shared [ssh]
[ivy:resolve] using ivy parser to parse file:/Users/neil/Business/
SnowyRangeConsulting/projects/twc/depot/server/releases/main-ivy/share/
db/ivyif.xml
[ivy:resolve] :: resolving dependencies :: twc#mas-dbif;working@
flicker.local
[ivy:resolve]   confs: [interface]
[ivy:resolve]   validate = true
[ivy:resolve]   refresh = false





-- 
Xavier Hanin - Independent Java Consultant
http://xhab.blogspot.com/
http://ant.apache.org/ivy/
http://www.xoocode.org/

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message