5 Replies Latest reply on May 20, 2003 2:19 PM by Frank Griffin

    3.0.7 - 3.2.1 build error

    Frank Griffin Novice

      I downloaded the source tarballs for 3.0.7, 3.2.0, and 3.2.1, and tried to build them. In each case, I got the following errors:

      *******************************************
      [jbossbuild@ftgme2 build]$ ./build.sh
      Searching for build.xml ...
      Buildfile: /data/jbossbuild/jboss-3.2.1-src/build/build.xml

      BUILD FAILED
      XML parser factory has not been configured correctly: Provider org.apache.crimson.jaxp.SAXParserFactoryImpl not found

      Total time: 0 seconds
      [jbossbuild@ftgme2 build]$ export JAXP=xerces
      [jbossbuild@ftgme2 build]$ export CLASSPATH=/usr/local/xerces/xercesImpl.jar:/usr/local/xerces/xml-apis.jar:/usr/local/xerces/xmlParserAPIs.jar
      [jbossbuild@ftgme2 build]$ ./build.sh
      Searching for build.xml ...
      Buildfile: /data/jbossbuild/jboss-3.2.1-src/build/build.xml

      BUILD FAILED
      Error reading project file: unknown protocol: resource

      Total time: 0 seconds
      ************************************

      The same procedure works just fine with the 3.0.4, 3.0.5, and 3.0.6 source tarballs in the same environment, even though their build.xml files have the same "resource://" protocol in the URL near the top (something to do with "buildmagic").

      Any idea what's wrong ?

        • 1. Re: 3.0.7 - 3.2.1 build error
          Juha Lindfors Master

          can you try compiling from CVS checkouts instead? They seem to be working more reliably.

          • 2. Re: 3.0.7 - 3.2.1 build error
            Frank Griffin Novice

            Using CVS gives a different error, but does get past the "resource://" problem. There are actually two problems here: the first is the error about the XML parser not being configured, and the second is the actual build failure once the explicit
            export JAXP=xerces
            is done. Both of these smell like CLASSPATH setup or PATH search problems, as if JBoss isn't finding its own "tools" directory.

            The docs don't mention having to supply anything in the way of external tools for the build, and CLASSPATH is null going into the build.

            This has to be working for most people if it's been in there since 3.0.7. What am I doing wrong ?

            Here's the error with a fresh CVS checkout:

            ********************************************

            [jbossbuild@ftgme2 data]$ cd jboss-all/build
            [jbossbuild@ftgme2 build]$ ./build.sh
            build.sh: *WARNING* Ignoring environment value for $ANT_HOME
            build.sh: Executing: /home/jbossbuild/data/jboss-all/tools/bin/ant -logger org.apache.tools.ant.NoBannerLogger
            Buildfile: build.xml

            BUILD FAILED
            XML parser factory has not been configured correctly: Provider org.apache.crimson.jaxp.SAXParserFactoryImpl not found

            Total time: 0 seconds
            [jbossbuild@ftgme2 build]$ export JAXP=xerces
            [jbossbuild@ftgme2 build]$ ./build.sh
            build.sh: *WARNING* Ignoring environment value for $ANT_HOME
            build.sh: Executing: /home/jbossbuild/data/jboss-all/tools/bin/ant -logger org.apache.tools.ant.NoBannerLogger
            Buildfile: build.xml

            _buildmagic:init:
            Trying to override old definition of task property

            _buildmagic:init:local-properties:
            [copy] Copying 1 file to /data/jbossbuild/jboss-all/build

            configure-project:
            [echo] groups: default
            [echo] modules: common,aop,naming,remoting,jmx,system,cache,j2ee,transaction,persistence,server,blocks,security,messaging,connector,varia,cluster,aspects,management,console,jetty,jboss.net,iiop

            _buildmagic:modules:most:

            ==============================================================
            ==
            == Executing 'most' in module 'common'...
            ==
            ==

            _buildmagic:init:
            Trying to override old definition of task libraryset
            Trying to override old definition of task execmodules
            Trying to override old definition of task resolveproperties
            Trying to override old definition of task resolver
            Trying to override old definition of task require
            Trying to override old definition of task _dump
            Trying to override old definition of task _puke
            Trying to override old definition of task moduleinit
            Trying to override old definition of task moduleconfig
            Trying to override old definition of task modulelibrary
            Trying to override old definition of task projectinfo
            Trying to override old definition of task library
            Trying to override old definition of task Ant
            Trying to override old definition of task moduleinfo
            Trying to override old definition of task projecthelp
            Trying to override old definition of task propertyfilter
            Trying to override old definition of task call
            Trying to override old definition of task property

            compile-mbean-sources:
            [mkdir] Created dir: /data/jbossbuild/jboss-all/common/output/gen/classes

            BUILD FAILED
            file:/data/jbossbuild/jboss-all/common/build.xml:119: Could not create task or type of type: jmxdoclet.

            Ant could not find the task or a class this task relies upon.

            This is common and has a number of causes; the usual
            solutions are to read the manual pages then download and
            install needed JAR files, or fix the build file:
            - You have misspelt 'jmxdoclet'.
            Fix: check your spelling.
            - The task needs an external JAR file to execute
            and this is not found at the right place in the classpath.
            Fix: check the documentation for dependencies.
            Fix: declare the task.
            - The task is an Ant optional task and optional.jar is absent
            Fix: look for optional.jar in ANT_HOME/lib, download if needed
            - The task was not built into optional.jar as dependent
            libraries were not found at build time.
            Fix: look in the JAR to verify, then rebuild with the needed
            libraries, or download a release version from apache.org
            - The build file was written for a later version of Ant
            Fix: upgrade to at least the latest release version of Ant
            - The task is not an Ant core or optional task
            and needs to be declared using .

            Remember that for JAR files to be visible to Ant tasks implemented
            in ANT_HOME/lib, the files must be in the same directory or on the
            classpath

            Please neither file bug reports on this problem, nor email the
            Ant mailing lists, until all of these causes have been explored,
            as this is not an Ant bug.

            Total time: 4 seconds
            ***********************************************

            • 3. Re: 3.0.7 - 3.2.1 build error
              Juha Lindfors Master

              did you check out with -r Branch_3_0 ?

              • 4. Re: 3.0.7 - 3.2.1 build error
                Frank Griffin Novice

                No, I just asked for "jboss-all", using the syntax from the CVS page. If I can get any of them to work (and it looks like the same error in all), I'd rather have the latest.

                • 5. Re: 3.0.7 - 3.2.1 build error
                  Frank Griffin Novice

                  I found the problem. I have Ant 1.5.1 installed and represented in $PATH (although not in CLASSPATH, which is set up on the fly by ant.sh). When I removed the Ant directories fro $PATH, the build worked correctly.

                  Isn't build.sh supposed to be ignoring ANT_HOME and finding its own copies of this stuff in the tools directory ?