Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Common Build Infrastructure/Getting Started/FAQ"

(New page: === What files do I need to run an Athena build? === In some folder, traditionally called org.eclipse.myproject/releng or org.eclipse.myproject.releng (but really, [http://anonsvn.jboss.o...)
 
m (What files do I need to run an Athena build?)
Line 2: Line 2:
  
 
In some folder, traditionally called org.eclipse.myproject/releng or org.eclipse.myproject.releng (but really, [http://anonsvn.jboss.org/repos/jbosstools/trunk/jmx/releng/ it can be anything]), you need these files:
 
In some folder, traditionally called org.eclipse.myproject/releng or org.eclipse.myproject.releng (but really, [http://anonsvn.jboss.org/repos/jbosstools/trunk/jmx/releng/ it can be anything]), you need these files:
 +
 +
maps/*.map -- ''what to build (where to get sources) : can be CVS, SVN, or HTTP (eg., Orbit jars)''
  
 
  build.properties -- ''how to build''
 
  build.properties -- ''how to build''
Line 8: Line 10:
  
 
  build.xml -- ''boilerplate script for running the build in Eclipse, via commandline, or in Hudson''
 
  build.xml -- ''boilerplate script for running the build in Eclipse, via commandline, or in Hudson''
 
maps/*.map -- ''file(s) which define where to get sources. Could be CVS, SVN, or HTTP (eg., Orbit jars).''
 
  
 
I also recommend having a .launch file which produces a log of your in-Eclipse build attempts so that when that log scrolls off the Console view, you can see what happened in the file.
 
I also recommend having a .launch file which produces a log of your in-Eclipse build attempts so that when that log scrolls off the Console view, you can see what happened in the file.

Revision as of 20:10, 22 July 2009

What files do I need to run an Athena build?

In some folder, traditionally called org.eclipse.myproject/releng or org.eclipse.myproject.releng (but really, it can be anything), you need these files:

maps/*.map -- what to build (where to get sources) : can be CVS, SVN, or HTTP (eg., Orbit jars)
build.properties -- how to build
testing.properties -- what tests to run
build.xml -- boilerplate script for running the build in Eclipse, via commandline, or in Hudson

I also recommend having a .launch file which produces a log of your in-Eclipse build attempts so that when that log scrolls off the Console view, you can see what happened in the file.

And, if you want to make it easier for others to get your source, you can include psfs/*.psf files. Better, use build.steps=map2psf in your build.properties to generate .psfs from your map files.

My build complains it can't find java.lang.Object. Seriously, WTF?

Make sure you've set JAVA_HOME to a valid path, as well as these for every Bundle-RequiredExecutionEnvironment ("BREE") defined in your plugins. If all your code is set to BREE 1.4, you only need a JAVA14_HOME; if you have a mix, include all that you use.

JAVA14_HOME
JAVA50_HOME
JAVA60_HOME

You might also want to override the values of these server.properties defaults:

JAVA60_HOME=/opt/public/common/ibm-java-jdk-ppc-60
JAVA50_64_HOME=/opt/public/common/ibm-java2-ppc64-50
JAVA50_HOME=/opt/public/common/ibm-java2-ppc-50
JAVA14_HOME=/opt/public/common/ibm-java2-142
JAVA_HOME=${JAVA50_HOME}
JavaSE-1.6=${JAVA60_HOME}/jre/lib/rt.jar:${JAVA60_HOME}/jre/lib/annotation.jar:${JAVA60_HOME}/jre/lib/beans.jar:${JAVA60_HOME}/jre/lib/ibmorbapi.jar:${JAVA60_HOME}/jre/lib/java.util.jar:${JAVA60_HOME}/jre/lib/jlm.jar:${JAVA60_HOME}/jre/lib/logging.jar:${JAVA60_HOME}/jre/lib/resources.jar:${JAVA60_HOME}/jre/lib/rt.jar:${JAVA60_HOME}/jre/lib/security.jar:${JAVA60_HOME}/jre/lib/sql.jar:${JAVA60_HOME}/jre/lib/vm.jar:${JAVA60_HOME}/jre/lib/xmldsigfw.jar:${JAVA60_HOME}/jre/lib/xml.jar:${JAVA60_HOME}/jre/lib/jsse.jar:${JAVA60_HOME}/lib/dt.jar:${JAVA60_HOME}/../Classes/dt.jar:${JAVA60_HOME}/../Classes/classes.jar:${JAVA60_HOME}/../Classes/jsse.jar
J2SE-1.5=${JAVA50_HOME}/jre/lib/rt.jar:${JAVA50_HOME}/jre/lib/vm.jar:${JAVA50_HOME}/jre/lib/core.jar:${JAVA50_HOME}/jre/lib/xml.jar:${JAVA50_HOME}/jre/lib/graphics.jar:${JAVA50_HOME}/jre/lib/server.jar:${JAVA50_HOME}/jre/lib/ibmorbapi.jar:${JAVA50_HOME}/jre/lib/security.jar:${JAVA50_HOME}/jre/lib/classes.jar:${JAVA50_HOME}/jre/lib/jsse.jar:${JAVA50_HOME}/../Classes/dt.jar:${JAVA50_HOME}/../Classes/classes.jar:${JAVA50_HOME}/../Classes/jsse.jar
J2SE-1.4=${JAVA14_HOME}/lib/rt.jar:${JAVA14_HOME}/jre/lib/rt.jar:${JAVA14_HOME}/jre/lib/core.jar:${JAVA14_HOME}/jre/lib/xml.jar:${JAVA14_HOME}/jre/lib/graphics.jar:${JAVA14_HOME}/jre/lib/server.jar:${JAVA14_HOME}/jre/lib/ibmorbapi.jar:${JAVA14_HOME}/jre/lib/security.jar:${JAVA14_HOME}/jre/lib/classes.jar:${JAVA14_HOME}/jre/lib/jsse.jar:${JAVA14_HOME}/../Classes/dt.jar:${JAVA14_HOME}/../Classes/classes.jar:${JAVA14_HOME}/../Classes/jsse.jar

What are buildExtra.xml and testExtra.xml for?

These are optional.

If you have custom runtime requirements which cannot be configured using dependencyURLs or repositoryURLs in your build.properties, you can define additional fetching/unpacking steps here, for building or testing respectively.

If you have custom packaging steps (ie., you ship more than the default set of zips) you can also add packaging steps here.

Note that currently, if you include buildExtra.xml or testExtra.xml, only the Eclipse SDK will be unpacked automatically for you. Everything else needs to be unpacked manually in this *Extra.xml file. See bug 284055.

Do I still need a test.xml in each of my test plugins?

No. In fact, having one there may cause some of your tests to fail. Omit this file and one will be generated for you from this template.

What information do I need to provide to get a new job added to Hudson?

To get added to [https://build.eclipse.org/hudson/view/Athena%20CBI/ Hudson, see Build In Hudson.

Back to the top