Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #15826 > unrolled thread

ant inheritance

Started byGreg <shireyg@gmail.com>
First post2012-07-05 11:30 -0700
Last post2012-07-05 13:22 -0700
Articles 3 — 2 participants

Back to article view | Back to comp.lang.java.programmer


Contents

  ant inheritance Greg <shireyg@gmail.com> - 2012-07-05 11:30 -0700
    Re: ant inheritance Lew <lewbloch@gmail.com> - 2012-07-05 13:02 -0700
    Re: ant inheritance Greg <shireyg@gmail.com> - 2012-07-05 13:22 -0700

#15826 — ant inheritance

FromGreg <shireyg@gmail.com>
Date2012-07-05 11:30 -0700
Subjectant inheritance
Message-ID<7006151c-c613-4418-ba50-95f7c524a765@googlegroups.com>
I am trying to build an ant build system where each component builds the things that it depends on.  Each thing that they depend on are in different build files.  Subsequently, I use the include task.  However, I run in to a problem when say component 1 needs to build component 2 and component 2 needs to build component 3.  Ant tells me that when I told it to build component 1 that it doesn't know the targets in component 3.  How do I get 1 to inherit the includes all the way down the line without explicitly telling it about all the components that anyone depends on?

[toc] | [next] | [standalone]


#15827

FromLew <lewbloch@gmail.com>
Date2012-07-05 13:02 -0700
Message-ID<4a9f2c63-a664-4f11-ba63-0cc0cafca03a@googlegroups.com>
In reply to#15826
On Thursday, July 5, 2012 11:30:37 AM UTC-7, Greg wrote:
> I am trying to build an ant build system where each component builds the things that it depends on.  Each thing that they depend on are in different build files.  Subsequently, I use the include task.  However, I run in to a problem when say component 1 needs to build component 2 and component 2 needs to build component 3.  Ant tells me that when I told it to build component 1 that it doesn't know the targets in component 3.  How do I get 1 to inherit the includes all the way down the line without explicitly telling it about all the components that anyone depends on?

Hmm. I think that it might help for you to post the build.xml. 

You might just have some subtly off way of invoking things.

Without details of your project structure and how you're trying 
to do things now, it's hard to suggest anything other than Ant 
subtasks.

The build.xml for component 1 should not be hitting any targets 
in the component 3 build.xml, nor even in the component 2 build.xml.

ANother way and likely better is to configure the antecedent 
projects as libraries, which if they really are components as you 
claim should be straightforward. If it isn't straightforward, perhaps 
they aren't really components.

Then make the JAR files for each library as dependencies for the project(s) 
that relies(y) on them.

-- 
Lew

[toc] | [prev] | [next] | [standalone]


#15828

FromGreg <shireyg@gmail.com>
Date2012-07-05 13:22 -0700
Message-ID<757f6740-2dc7-429b-a00b-6a6a6b4fba17@googlegroups.com>
In reply to#15826
On Thursday, July 5, 2012 11:30:37 AM UTC-7, Greg wrote:
> I am trying to build an ant build system where each component builds the things that it depends on.  Each thing that they depend on are in different build files.  Subsequently, I use the include task.  However, I run in to a problem when say component 1 needs to build component 2 and component 2 needs to build component 3.  Ant tells me that when I told it to build component 1 that it doesn't know the targets in component 3.  How do I get 1 to inherit the includes all the way down the line without explicitly telling it about all the components that anyone depends on?

File 1
>>>
<?xml version="1.0" encoding="UTF-8"?>
<project name="hpic4vctest" default="build" basedir=".">
    <include file="build.xml" as="common"/>
    <target name="build" depends="common.build"/>
</project>
<<<<

File 2
>>>
<?xml version="1.0" encoding="UTF-8"?>
<project name="hpic4vc" default="build" basedir=".">
    <!--
           ===================
           COMPILATION SECTION
           ===================
    -->

    <include file="testsub/buildcpy.xml" as="nested"/>
    <target name = "createBinaryDir">
         <echo>I am build file 1's depend</echo>
    </target>
    
    <target name = "compile" depends="createBinaryDir, nested.do2">
         <echo>I am build file 1 located in ${basedir}</echo>
    </target>

    <target name = "build">
         <property file="build.properties"/>
         <antcall target="compile"/>
    </target>
      
    
</project>
>>>>

File 3
<<<<<

<?xml version="1.0" encoding="UTF-8"?>
<project name="hpic4vc2" default="compile" basedir=".">
    <dirname property="hpic4vc2.basedir" file="${ant.file.hpic4vc2}"/>
    <property file="${hpic4vc2.basedir}/build.properties"/>
    <!--
           ===================
           COMPILATION SECTION
           ===================
    -->
    <target name = "createBinaryDir">
         <echo>I am build file 2's depend</echo>
    </target>
    
    <target name = "compile" depends="createBinaryDir">
         <echo>I am build file 2</echo>
    </target>
    <target name = "do2" depends="compile">
         <echo>I am build file 2</echo>
         <echo>${hpic4vc2.basedir}</echo>
         <echo>VAR: ${test}</echo>
    </target>
    
</project>
>>>>

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.java.programmer


csiph-web