Thanks for answers !
So we all go on the correct way :)

I keep all the conf files in each project's src/conf directory and we do not
put them in our jars because that's not practical for production (the
sysadmin doesn't know how to find the jar, unzip it, modify, rezip, etc.).
So I wrote some goals in my maven.xml to copy the jars from all dependent
projects.  I copy them into src/conf.dep.  I then take src/conf.dep and copy
to src/conf.dev, and then copy src/conf to src/conf.dev.  Sounds complicated
but it's not too bad:

src/conf - original, unfiltered resources
src/conf.dep - filtered dependency resources
src/conf.dev - filtered original & dependency resources (original can
override dependency)

The maven.xml code is very ugly, but it works and I haven't had time to
optimize it:

 <goal name="copy-dep-res">
   <echo>Copying dependency resources for project ${pom.artifactId}</echo>
        <ant:delete dir="${basedir}/src/conf.dep"/>
        <ant:mkdir dir="${basedir}/src/conf.dep"/>
   <j:forEach items="${pom.dependencies}" var="dep" indexVar="depNumber">
     <j:forEach items="${dep}" var="depItem" indexVar="depItemNumber">
       <util:tokenize var="depItemItems"
delim=":">${depItem}</util:tokenize>
       <j:forEach items="${depItemItems}" var="depItemItem">
              <util:tokenize var="depItemItemItems" delim="
">${depItemItem}</util:tokenize>
         <j:forEach items="${depItemItemItems}" var="depProject">
           <util:available file="../${depProject}/src">
             <util:available file="../${depProject}/src/conf">
               <echo>${depProject} is available</echo>
                            <ant:copy todir="${basedir}/src/conf.dep" filtering="false"
                       overwrite="true">
                 <ant:fileset dir="../${depProject}/src/conf">
                   <ant:exclude name="**/empty_file_for_cvs.txt"/>
                   <ant:exclude name="**/configuration.xml"/>
                   <ant:exclude name="**/.cvsignore"/>
                                  </ant:fileset>
               </ant:copy>
             </util:available>
                      <ant:copy file="${basedir}/../maven/resource.cvsignore"
               tofile="${basedir}/src/conf.dep/.cvsignore"
               overwrite="true"/>
           </util:available>
         </j:forEach>
       </j:forEach>
     </j:forEach>
   </j:forEach>
 </goal>

Yes, I know, it actually copies the resources for each project twice.  But
it's so fast I haven't bothered to fix this (tough deadlines here)

Michael




-----Message d'origine-----
De : G�schl,Siegfried [mailto:[EMAIL PROTECTED]
Envoy� : lundi 28 juin 2004 16:08
� : Maven Users List
Objet : RE: config files dependencies


Hi Alexander,

I have the same problems with Torque.properties, log4j.properties
and spy.properties. I keep a folder for each set of configuration
files for each build mode. To determine the build mode I pass a
'maven.build.mode' for building all project but I'm not using the
reactor (yet)

Cheers,

Siegfried Goeschl

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Montag, 28. Juni 2004 14:09
To: [EMAIL PROTECTED]
Subject: config files dependencies



Hi!

I need some advice. I need to copy config file from one subproect
to another. I know one way to solve this problem. I can spesify
this cofig files as resourses in one subproject and spesify the
second subproject as being dependent from the first one.

But I have two problems:

1. This config files have to be unjared. (P6SpyDriver wants its
config file - spy.properties - not to be in jar)

2. To test the second subprojct I need to use testing version of
the config files from the first one.

I'm going to copy config files and their testing versions from
the first subproject to the second one:



<maven:reactor

basedir="${basedir}/.."

includes="firstProject/project.xml"

goals="test:test-resources"

postProcessing="true"

/>

<ant:copy todir="${maven.test.dest}">

<fileset
dir="${reactorProjects.get(0).context.getVariable('maven.test.dest')}">

<include name=spy.properties"/>

<include name="OJB*.*"/>

</fileset>

<ant:copy>



<>Would it be the right desision?

--

Maksimenko Alexander

Softwarium, www.softwarium.net





-- Maksimenko Alexander Softwarium, www.softwarium.net


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



  • con... Максименко
    • ... "G�schl,Siegfried"
      • ... Michael Mattox
        • Maksimenko Alexander

Reply via email to