ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matt Benson <gudnabr...@yahoo.com>
Subject Re: Displaying the value in a Java class?
Date Thu, 09 Feb 2006 23:11:23 GMT
I thought the manual was wrong at first too, but using
a class file is correct.  What is not as obvious is
that you need BCEL to make it work.  This is
documented in install.html#librarydependencies from
the manual.

HTH,
Matt

--- Rhino <rhino1@sympatico.ca> wrote:

> The classcontents filterreader might very well be
> exactly what I want - if I 
> could understand how to use it!
> 
> I've just tried several experiments and nothing
> works for me; nothing at 
> all.
> 
> I must be misunderstanding some of the concepts. For
> instance, it _looks_ as 
> if I should be able to read a file, grab all the
> constants from it, and turn 
> them into properties. But I can't make out if I'm
> supposed to reading a 
> class file or a source file: it _looks_ as if I
> should be reading a class 
> file, which seems counterintuitive to me.
> Nevertheless, I've tried pointing 
> the task at both a real .class file and at a real
> Java source file in turn 
> but I inevitably get "Unable to load file:
> java.io.IOException" regardless 
> of which I use. Here is my task:
> 
> <loadproperties srcfile="ResumeConstants.java">
> 
> <filterchain>
> 
> <classconstants/>
> 
> </filterchain>
> 
> </loadproperties>
> 
> 
> 
> (Replacing the srcfile value with
> "ResumeConstants.class" made no difference 
> at all. Both the source and the class file are in
> the same directory as the 
> Ant script itself, just to keep things nice and
> simple.)
> 
> Here is the stackTrace:
> 
> BUILD FAILED
> 
>
E:\eclipse\3.1.1\eclipse\workspace\Resume_JDK_1.5.0\xml\filter.xml:34:
> 
> Unable to load file: java.io.IOException
> 
> at 
>
org.apache.tools.ant.taskdefs.LoadProperties.execute(LoadProperties.java:227)
> 
> at
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> 
> at org.apache.tools.ant.Task.perform(Task.java:364)
> 
> at
> org.apache.tools.ant.Target.execute(Target.java:341)
> 
> at
>
org.apache.tools.ant.Target.performTasks(Target.java:369)
> 
> at
>
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> 
> at
>
org.apache.tools.ant.Project.executeTarget(Project.java:1185)
> 
> at 
>
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
> 
> at 
>
org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
> 
> at
>
org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> 
> at 
>
org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
> 
> at 
>
org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
> 
> Caused by: java.io.IOException
> 
> at
>
org.apache.tools.ant.filters.ClassConstants.read(ClassConstants.java:136)
> 
> at 
>
org.apache.tools.ant.filters.BaseFilterReader.read(BaseFilterReader.java:86)
> 
> at java.io.Reader.read(Unknown Source)
> 
> at
>
org.apache.tools.ant.util.FileUtils.readFully(FileUtils.java:1107)
> 
> at 
>
org.apache.tools.ant.filters.util.ChainReaderHelper.readFully(ChainReaderHelper.java:231)
> 
> at 
>
org.apache.tools.ant.taskdefs.LoadProperties.execute(LoadProperties.java:204)
> 
> ... 11 more
> 
> --- Nested Exception ---
> 
> java.io.IOException
> 
> at
>
org.apache.tools.ant.filters.ClassConstants.read(ClassConstants.java:136)
> 
> at 
>
org.apache.tools.ant.filters.BaseFilterReader.read(BaseFilterReader.java:86)
> 
> at java.io.Reader.read(Unknown Source)
> 
> at
>
org.apache.tools.ant.util.FileUtils.readFully(FileUtils.java:1107)
> 
> at 
>
org.apache.tools.ant.filters.util.ChainReaderHelper.readFully(ChainReaderHelper.java:231)
> 
> at 
>
org.apache.tools.ant.taskdefs.LoadProperties.execute(LoadProperties.java:204)
> 
> at
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> 
> at org.apache.tools.ant.Task.perform(Task.java:364)
> 
> at
> org.apache.tools.ant.Target.execute(Target.java:341)
> 
> at
>
org.apache.tools.ant.Target.performTasks(Target.java:369)
> 
> at
>
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> 
> at
>
org.apache.tools.ant.Project.executeTarget(Project.java:1185)
> 
> at 
>
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
> 
> at 
>
org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
> 
> at
>
org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> 
> at 
>
org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
> 
> at 
>
org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
> 
> 
> 
> What am I doing wrong? By the way, I've tried this
> task both ways, with the 
> convenience method and the "long way" but all
> approaches fail on 
> java.io.IOException.
> 
> Also, to accomplish what I want to do, am I correct
> in assuming that I will 
> need to put two or three filters in sequence in the
> task? From what I see in 
> the manual, I think I need to have everything within
> a LoadProperties task, 
> then use a ConstantChain to pull out all of the
> constants, then use a 
> LineContains to find the line containing my
> constant, 
> DESIRED_EMPLOYMENT_HISTORY_FORMAT, then store that
> constant and its value as 
> a property so that I end up with a property named 
> DESIRED_EMPLOYMENT_HISTORY_FORMAT with a value of
> PARAGRAPH_FORMAT or 
> LIST_FORMAT. Is that more-or-less correct?
> 
> If someone could please help me get started, I would
> really appreciate it. I 
> think I'm doing what the manual says but nothing
> seems to work. What's the 
> trick?
> 
> By the way, assuming this does what I want, thank
> you for pointing this 
> technique out to me. I'd seen the term FilterChain
> before but had never 
> looked at the article to see what they did.
> 
> --
> 
> Rhino
> 
> 
=== message truncated ===


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message