I was trying to build struts from source (nightlies and CVS-MAIN), and
found it a little less than straight forward.  I did not see any help
in the archives...So this text documents my trials to succesfully build
struts from scratch...it's here for the record.  Also, if there is a much
simpler way to do this, please let me know.  If this text is helpful in
the installation doc, let me know and I'll write a patch (especially now
that I can build struts :)

I started with the following jars:
  commons-digester.jar    (v. 1.1)
  commons-beanutils.jar   (v. 1.0)
  commons-collections.jar (v. 1.0)


A. BUILD STRUTS (MAIN branch)
-----------------------------
1. Download nightly (our checkout jakarta-struts MAIN)
2. Create the file ${user.home}/build.properties
3. Set properties in build.properties
   . commons-collections.jar
   . commons-beanutils.jar
4. We find that out that we need
   . commons-dbcp.jar
   . commons-pool.jar
   See:
http://www.mail-archive.com/struts-dev@jakarta.apache.org/msg04437.html
   But since there was no released version (that I could locate) of dbcp,
   I checked out the source from CVS and began to build.  Go to Step B-1
4. Set properties in build.properties
   . commons-dbcp.jar (v. CVS-Main)
   . commons-digester.jar
5. We find that out that we need
   . commons-logging.jar (v. CVS-Main)
   See:
http://www.mail-archive.com/struts-dev@jakarta.apache.org/msg04271.html
   And there *is* a 1.0 for logging :)
   Get it from http://jakarta.apache.org/commons/logging.html and install
6. Set properties in build.properties
   . commons-logging.jar
7. We find that out that we need
   . commons-services.jar
   See:
http://www.mail-archive.com/struts-dev@jakarta.apache.org/msg04739.html
   But since there was no released version (that I could locate) of
services,
   I checked out the source from CVS and began to build.  Go to Step D-1
8. Set properties in build.properties
   . commons-services.jar (v. CVS-Main)
9. We find that out that we need
   . comomons-validator.jar
   Go to Step F-1
10. Set properties in build.properties:
   . commons-validator.jar (v. CVS-Main)
   . servlet.jar
11. We find that out that we need DynaBean support found in the latest
   . comomons-beanutils.jar
   Go to Step F-1
12. Set properties in build.properties:
   . commons-beanutils.jar (v. CVS-Main)
13. Need to specify how to locate xalan.jar for ANT build.  See:
    http://www.mail-archive.com/struts-dev@jakarta.apache.org/msg04210.html
    You've got to get a copy of Xalan and put it in ${ANT.HOME}/lib
14. Builds...great!  Done.


B. BUILD DBCP (MAIN branch)
---------------------------
1. Checkout jakarta-commons
2. Go into dbcp, and 'ant dist'
3. Dependency on 'commons-pool'.  (Did not see a release of this, so have
   to build myself).  Got to Step C-1
4. Set properties in build.properties
   . commons-pool.jar
   . jdbc20ext.jar
5. Builds...great!  Continue with Step A-5


C. BUILD POOL (MAIN branch)
---------------------------
1. Go into jakarta-commons/pool, run 'ant dist'
2. Builds...great!  Continue with Step B-4


D. BUILD SERVICES (MAIN branch)
---------------------------
1. Checkout jakarta-commons-sandbox
2. Go into jakarta-commons-sandbox/services, run 'ant dist'
3. Uhhhh.oooh, it requires some digester code...what version could it
   possibly want?  Let's check the build file to see if there are any
   indications.  Hmmm, no info here...(tried 1.1.1, but no success).
   Well, we probably cannot go wrong with CVS-Main branch.  Go to Step E-1.
3. Reset properties in build.properties
   . commons-digester.jar (v. CVS-Main)
4. Builds...great!  Continue with Step A-8


E. BUILD DIGESTER (MAIN branch)
-------------------------------
1. Go into jakarta-commons/digester, run 'ant dist'
2. Uhhhh.oooh, it requires some beanutils code...what version could it
   possibly want?  Let's check the build file to see if there are any
   indications.  Hmmm, no info here...(tried 1.2 and it works)
3. Reset properties in build.properties
   . commons-beanutils.jar (v. 1.2)
4. Builds...great!  Continue with Step D-3


F. BUILD VALIDATOR (MAIN branch)
-------------------------------
1. Go into jakarta-commons/validator, run 'ant dist'
2. We find that out that we need
   . regexp.jar (v. 1.2)
   See: http://jakarta.apache.org/regexp/index.html
3. Set properties in build.properties
   . regexp.jar (v. 1.2)
4. Builds...great!  Continue with Step A-10


F. BUILD BEANUTILS (MAIN branch)
-------------------------------
1. Go into jakarta-commons/beanutils, run 'ant dist'
4. Builds...great!  Continue with Step A-12


We started with the following requirements as specified in the doc:
http://jakarta.apache.org/struts/userGuide/installation.html
  PRODUCT                 VERSION
  commons-digester.jar    1.1
  commons-beanutils.jar   1.0
  commons-collections.jar 1.0

I ended up with:
  PRODUCT                 VERSION
  commons-collections.jar 1.0
  commons-pool.jar        CVS-Main
  commons-logging.jar     CVS-Main
  commons-validator.jar   CVS-Main
  commons-dbcp.jar        CVS-Main
  commons-digester.jar    CVS-Main
  commons-beanutils.jar   CVS-Main
  commons-services.jar    CVS-Main
  regexp.jar              1.2


Regards,
Gidado

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

Reply via email to