8 Replies Latest reply on May 5, 2004 3:43 AM by darranl

    Building JBoss IDE

    darranl

      I have just retrieved the latest JBoss IDE source from CVS (The eclipse-3-0 branch).

      I have imported all of the projects into Eclipse 3.0M8 and I have executed 'Create ANT Build File'.

      Using Eclipse I execute the 'build.update.jar' target, this appears to complete without any problems.

      Using Eclipse I then execute the 'zip.distribution' target which again appears to run without any problems.

      In the feature folder the zip file 'org.jboss.ide.eclipse_1.2.330.bin.dist.zip' is generated.

      The generated zip file only contains the xml configuration files, there are no jar files included.

      Could someone please let me know if there is a step that I have missed out or is there something wrong with the version currently available from CVS.

      This is running on Windows 2000 with the Sun SDK 1.4.2_02

        • 1. Re: Building JBoss IDE
          darranl

          I have just seen the new post instructing everyone to check the Wiki before posting and to update it after giving an answer to a question that others may find helpfull.

          The installing JBoss IDE page misses out one installation method - 'Compiling From Source'

          Could someone please let me know - Does JBoss IDE compile straight from CVS when following the build instructions on sourceforge or are these out of date?

          If there is a known issue I do not need to spend time tracking it down, if however it should compile I can spend time identifying why my build is failing.

          • 2. Re: Building JBoss IDE

            Hi,

            I don't think that "building from the sources" can be considered as an installation (only my point of view).

            Anyway, if you look closer at the Wiki, you will see the "For developer" section, where the instructions for building JBoss-IDE from the sources are available.

            For short : http://jboss.org/wiki/Wiki.jsp?page=JBossIDEBuild

            Laurent.

            • 3. Re: Building JBoss IDE
              darranl

              Yes those instructions seem to match the instructions available from SourceForge.

              Once thing that I have noteced it that I have got a 'org.jboss.ide.eclipse.xdoclet.help' project from somewhere which I have now removed.

              When you do a fresh checkout from CVS are you able to get everything working straight away using Eclipse 3.0M8?

              • 4. Re: Building JBoss IDE
                darranl

                Now I have deleted everything for JBoss-IDE and I have checked out the eclipse-3-0 branch again.

                I have followed through the instructions in the Wiki

                For some reason I still have an extra project that is not mentioned 'org.jboss.ide.eclipse.xdoclet.help', should this be mentioned in the Wiki?

                This time I do not have a site project, has this been removed recently?

                After importing the listed projects I selected all projects (except feature) and invoked update classpath.

                On the feature.xml contained within feature I invoked 'Create Ant Build File', this completed successfully after a short while.

                I then ran ant for the build.xml contained within the feature project, I made sure that the build.update.jar, build.jars and zip.distribution targets were all selected.

                The build appeared to complete with no errors:-

                The 'org.jboss.ide.eclipse_1.2.330.bin.dist.zip' archive within feature is still being created with no jars inside, just the xml configuration files of the projects.

                What step have I missed, is there anything else that I need to configure?

                Has anyone tried building JBossIDE from a fresh checkout from CVS using Eclipse 3.0 M8?

                • 5. Re: Building JBoss IDE

                  Hi,

                  The 'org.jboss.ide.eclipse.xdoclet.help' plugin is still in CVS but not as part of JBoss-IDE because it is out of sync, and is no longer maintained.

                  Can you post the build.xml file generated from your feature.xml file ?

                  Laurent.

                  • 6. Re: Building JBoss IDE
                    darranl

                    Thanks for your help, here is the build.xml file contained within the feature project generated from the feature.xml

                    <?xml version="1.0" encoding="UTF-8"?>
                    <project name="org.jboss.ide.eclipse" default="build.update.jar" basedir=".">
                    
                     <target name="init">
                     <property name="feature.temp.folder" value="${basedir}/feature.temp.folder"/>
                     <property name="feature.destination" value="${basedir}"/>
                     </target>
                    
                     <target name="all.plugins" depends="init">
                     <ant antfile="build.xml" dir="../org.apache.xalan/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.core/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.launcher.core/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.ui/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.xdoclet.ui/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.xdoclet.core/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.deployer.core/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.launcher.ui/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.packaging.core/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.xdoclet.assist/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.packaging.ui/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.xdoclet.run/" target="${target}">
                     </ant>
                     <ant antfile="build.xml" dir="../org.jboss.ide.eclipse.deployer.ui/" target="${target}">
                     </ant>
                     </target>
                     <target name="all.features" depends="init">
                     </target>
                     <target name="update.feature" depends="init">
                     </target>
                    
                     <target name="all.children" depends="init,all.features,all.plugins,update.feature">
                     </target>
                    
                     <target name="children" if="include.children">
                     <antcall target="all.children"/>
                     </target>
                    
                     <target name="build.jars" depends="init" description="Build all the jars for the feature: org.jboss.ide.eclipse.">
                     <antcall target="all.children">
                     <param name="target" value="build.jars"/>
                     </antcall>
                     </target>
                    
                     <target name="build.sources" depends="init">
                     <antcall target="all.children">
                     <param name="target" value="build.sources"/>
                     </antcall>
                     </target>
                    
                     <target name="build.zips" depends="init">
                     <antcall target="all.children">
                     <param name="target" value="build.zips"/>
                     </antcall>
                     </target>
                    
                     <target name="build.update.jar" depends="init" description="Build the feature jar of: org.jboss.ide.eclipse for an update site.">
                     <antcall target="all.children">
                     <param name="target" value="build.update.jar"/>
                     </antcall>
                     <property name="feature.base" value="${feature.temp.folder}"/>
                     <delete dir="${feature.temp.folder}"/>
                     <mkdir dir="${feature.temp.folder}"/>
                     <antcall target="gather.bin.parts" inheritAll="false">
                     <param name="arch" value="*"/>
                     <param name="ws" value="*"/>
                     <param name="nl" value="*"/>
                     <param name="os" value="*"/>
                     <param name="feature.base" value="${feature.temp.folder}"/>
                     </antcall>
                     <jar jarfile="${feature.destination}/org.jboss.ide.eclipse_1.2.330.jar" basedir="${feature.temp.folder}/features/org.jboss.ide.eclipse_1.2.330"/>
                     <delete dir="${feature.temp.folder}"/>
                     </target>
                    
                     <target name="gather.bin.parts" depends="init" if="feature.base">
                     <antcall target="children">
                     <param name="destination.temp.folder" value="${feature.base}/plugins"/>
                     <param name="target" value="gather.bin.parts"/>
                     </antcall>
                     <mkdir dir="${feature.base}/features/org.jboss.ide.eclipse_1.2.330"/>
                     <copy todir="${feature.base}/features/org.jboss.ide.eclipse_1.2.330">
                     <fileset dir="${basedir}" includes="feature.xml," />
                     </copy>
                     <eclipse.idReplacer featureFilePath="${feature.base}/features/org.jboss.ide.eclipse_1.2.330/feature.xml" featureIds="" pluginIds="org.jboss.ide.eclipse.core,1.2.330,org.jboss.ide.eclipse.deployer.core,1.2.330,org.jboss.ide.eclipse.deployer.ui,1.2.330,org.jboss.ide.eclipse.launcher.core,1.2.330,org.jboss.ide.eclipse.launcher.ui,1.2.330,org.jboss.ide.eclipse.packaging.core,1.2.330,org.jboss.ide.eclipse.packaging.ui,1.2.330,org.jboss.ide.eclipse.ui,1.2.330,org.jboss.ide.eclipse.xdoclet.assist,1.2.330,org.jboss.ide.eclipse.xdoclet.core,1.2.330,org.jboss.ide.eclipse.xdoclet.run,1.2.330,org.jboss.ide.eclipse.xdoclet.ui,1.2.330,org.apache.xalan,2.4.1,"/>
                     <antcall target="ROOTFILES${os}_${ws}_${arch}"/>
                     </target>
                     <target name="ROOTFILES*_*_*">
                     </target>
                    
                     <target name="zip.distribution" depends="init" description="Create a zip containing all the plug-ins and features for the feature: org.jboss.ide.eclipse.">
                     <delete dir="${feature.temp.folder}"/>
                     <mkdir dir="${feature.temp.folder}"/>
                     <antcall target="gather.bin.parts">
                     <param name="arch" value="*"/>
                     <param name="ws" value="*"/>
                     <param name="nl" value="*"/>
                     <param name="include.children" value="true"/>
                     <param name="feature.base" value="${feature.temp.folder}"/>
                     <param name="os" value="*"/>
                     </antcall>
                     <zip zipfile="${feature.destination}/org.jboss.ide.eclipse_1.2.330.bin.dist.zip" basedir="${feature.temp.folder}" filesonly="false" whenempty="skip"/>
                     <delete dir="${feature.temp.folder}"/>
                     </target>
                    
                     <target name="zip.sources" depends="init">
                     <delete dir="${feature.temp.folder}"/>
                     <mkdir dir="${feature.temp.folder}"/>
                     <antcall target="all.children">
                     <param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.jboss.ide.eclipse.source_1.2.330/src"/>
                     <param name="include.children" value="true"/>
                     <param name="target" value="gather.sources"/>
                     </antcall>
                     <zip zipfile="${feature.destination}/org.jboss.ide.eclipse_1.2.330.src.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip"/>
                     <delete dir="${feature.temp.folder}"/>
                     </target>
                    
                     <target name="zip.logs" depends="init">
                     <delete dir="${feature.temp.folder}"/>
                     <mkdir dir="${feature.temp.folder}"/>
                     <antcall target="all.children" inheritAll="false">
                     <param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
                     <param name="include.children" value="true"/>
                     <param name="target" value="gather.logs"/>
                     </antcall>
                     <zip zipfile="${feature.destination}/org.jboss.ide.eclipse_1.2.330.log.zip" basedir="${feature.temp.folder}" filesonly="true" whenempty="skip"/>
                     <delete dir="${feature.temp.folder}"/>
                     </target>
                    
                     <target name="clean" depends="init" description="Clean the feature: org.jboss.ide.eclipse of all the zips, jars and logs created.">
                     <delete file="${feature.destination}/org.jboss.ide.eclipse_1.2.330.jar"/>
                     <delete file="${feature.destination}/org.jboss.ide.eclipse_1.2.330.bin.dist.zip"/>
                     <delete file="${feature.destination}/org.jboss.ide.eclipse_1.2.330.log.zip"/>
                     <delete file="${feature.destination}/org.jboss.ide.eclipse_1.2.330.src.zip"/>
                     <delete dir="${feature.temp.folder}"/>
                     <antcall target="all.children">
                     <param name="target" value="clean"/>
                     </antcall>
                     </target>
                    
                     <target name="refresh" depends="init" if="eclipse.running" description="Refresh this folder.">
                     <eclipse.convertPath fileSystemPath="C:/Removable/Work/Development/JBoss-IDE/code/contrib/jbosside/feature" property="resourcePath"/>
                     <eclipse.refreshLocal resource="${resourcePath}" depth="infinite"/>
                     <antcall target="all.children">
                     <param name="target" value="refresh"/>
                     </antcall>
                     </target>
                     <target name="gather.sources">
                     <antcall target="children">
                     <param name="destination.temp.folder" value="${feature.temp.folder}/plugins/org.jboss.ide.eclipse.source_1.2.330/src"/>
                     <param name="target" value="gather.sources"/>
                     </antcall>
                     </target>
                    
                     <target name="gather.logs" depends="init">
                     <mkdir dir="${feature.temp.folder}"/>
                     <antcall target="all.children" inheritAll="false">
                     <param name="destination.temp.folder" value="${feature.temp.folder}/plugins"/>
                     <param name="target" value="gather.logs"/>
                     </antcall>
                     </target>
                    
                    </project>


                    • 7. Re: Building JBoss IDE

                      Hi,

                      I have done the build several times and it has always generated the zip bundle. As for your build.xml file, I can't see any differences with mine. What you can do is to invoke the "clean" and "refresh" goal and then try it again.

                      I must say that it puzzled me. I remember that someone encountered the same problem once, but can't find the forum thread.

                      I am interested in your feedback to complete the build FAQ.

                      Laurent.

                      • 8. Re: Building JBoss IDE
                        darranl

                        Thanks for your help, now that I know that it should work Ok I will look into it a bit more and let you know what I find out.