1 Reply Latest reply on Oct 26, 2005 3:50 PM by Adrian Brock

    JBossBuild usability issue - items built independantly of co

    Ruel Loehr Novice

      In the build magic system users are able to insert targets very easily. This allows jars to be created at many different times.

      A real world use case from the build magic system is to build all modules. Once this is completed then build a jar, jboss-all-client.jar which contains a collection of client jars.

      <!--Create a jbossall-client.jar containing everything a client app needs-->
       <mkdir dir="build"/>
       <delete file="${install.client}/jbossall-client.jar"/>
       <unjar dest="build">
       <fileset dir="${install.client}">
       <include name="*-client.jar"/>
       <include name="concurrent.jar"/>
       <include name="jboss-j2ee.jar"/>
       <include name="jboss-j2se.jar"/>
       <include name="jboss-jaxrpc.jar"/>
       <include name="jboss-saaj.jar"/>
       <include name="jbossmqha.jar"/>
       <include name="jmx-connector-client-factory.jar"/>
       <include name="namespace.jar"/>
       <include name="jboss-deployment.jar"/>
       <include name="wsdl4j.jar"/>
       <include name="jboss-remoting.jar"/>
       <include name="ejb3-persistence.jar"/>
       <include name="jboss-ejb3x.jar"/>
       <include name="jboss-annotations-ejb3.jar"/>
       <include name="hibernate-annotations.jar"/>
       <!-- excludes -->
       <exclude name="jboss-ws4ee-client.jar"/>
       <exclude name="jbossws-client.jar"/>
       </fileset>
       </unjar>
       <jar destfile="${install.client}/jbossall-client.jar" basedir="build" />
       <delete dir="build" />
       </target>


      In the JBossBuild system we do not have this luxury as all jar generation takes place within the context of a component. In order to replicate this functionality you could simply place the creation of this jar into a component that is built late in the build process, however this just masks the underlying issue, that actions cannot be declared outside the scope of a component. Is this an issue? I welcome thoughts.