1 Reply Latest reply on Dec 23, 2008 6:08 PM by peterj

    building jboss or microkernel question

    deanhiller

      I was told this was a user question so was directed to this forum

      original post:
      http://www.jboss.com/index.html?module=bb&op=viewforum&f=61

      I was wanting to build JBoss from all source, but it unfortunately sucks ALOT of binaries in and the ones I wanted to fiddle with ended up in microkernel so I checked that out of SVN(since there is no released 2.0.2 file available), and that again sucked in more binaries. It seems quite impossible or at least alot of work to build JBoss from source. Is there instructions somewhere or a good article so I am actually building it all the way from the deployers...

      http://repository.jboss.org/maven2/org/jboss/deployers/

      It looks like I have to build those, then deliver to microkernel, build that and then deliver to JBoss 5.0 and then build that???? There has got to be an easier way? Is there an easy way to suck in source maybe or something for everything from the JBoss 5.0 build so that I could change, rebuild, change, rebuild and basically fiddle with JBoss to figure out why my stuff doesn't work?

      thanks,
      Dean


        • 1. Re: building jboss or microkernel question
          peterj

          As you have already found out, JBoss AS is a project that includes many other open source projects, many of which are other JBoss projects. And as you found out, those other projects are included mainly as binaries in the thirdparty directory.

          I think that the closest you will get to what you want is to run this command from thridparty directory:

          mvn package -Pdownload-sources

          This command will download most of the sources you are interested in. For example, three source jar files appear in thirdparty/jboss/microcontainer/lib. You can unpack those and use those sources.

          What I do is modify the source files I want, compile only the files I changed using the existing JAR files in my javac classpath, and then replacing the original class files in the original JAR files with my newly compiled class files. The result is that the JAR file has my updated classes and the rest of the classes are the originals that shipped with the app server. I know this is not ideal, but I have used this process countless times to make modifications to help track down issues.