Last updated March 12, 2011 22:27, by radim
=How to build nbandroid
'''TODO''' this page is outdated and need to be rewritten. Simple version of the story:
* Get and install [http://www.netbeans.org NetBeans]. NBAndroid is currently built against version 6.9
* Get and install Android SDK and download supported SDK targets
* Get the sources (see below)
* Add following line to <tt>nbproject/private/platform-private.properties</tt> (needed to run tests)
test-unit-sys-prop.test.all.android.sdks.home=<your Android SDK location>
'''Here is the old version'''
To build nbandroid, you'll need to have an [http://ant.apache.org/ Ant] and [http://www.selenic.com/mercurial/wiki/ Mercurial] and [http://download.netbeans.org/netbeans/6.5/rc/ NetBeans] (you have to use NetBeans 6.5) installed.
First get the sources:
cd /somewhere/on/disk
hg clone https://kenai.com/hg/nbandroid~mercurial nbandroid
Then start NetBeans and open project ''/somewhere/on/disk/nbandroid/suite''. The last step is (depends on what you want) to right-click '''suite''' project and invoke ''Run'' or ''Build All'' action.
== A simpler way using NetBeans 6.7
# Become project member.
# (optional to get integration with bug tracking system) Add JIRA plugin to your IDE.
# Log in to Kenai.com from IDE.
# Get sources using Kenai integration
== Build environment and how to run tests
* Get NetBeans 6.5.1 and its test distribution. You can download the binary build for the paltform itself though you will likely need to build your own copy of test distribution. Get NetBeans sources and run 'ant -f nbbuild.xml test-dist'. Configure platform.properties for the suite to refer to this platform and to test distribution.
<pre>
wget http://services.netbeans.org/bouncer/index.php?product=netbeans-6.5.1-ml\&os=linux
chmod +x netbeans-6.5.1-ml-linux.sh
./netbeans-6.5.1-ml-linux.sh # TODO find how to do silent install --silent
ROOT=`pwd`
wget http://www.apache.org/dist/ant/binaries/apache-ant-1.7.1-bin.tar.bz2
tar xjf apache-ant-1.7.1-bin.tar.bz2
export ANT_OPTS="-Xmx256m -XX:MaxPermSize=96m"
PATH=$ROOT/apache-ant-1.7.1/bin:$PATH
mkdir -p src/netbeans.org
cd src/netbeans.org
hg clone http://hg.netbeans.org/release65/
cd release65
echo nbjdk.home=/usr/lib/jvm/java-1.5.0-sun >>nbbuild/user.build.properties
JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
ant -f nbbuild/build.xml build-nozip build-test-dist
</pre>
* Install your NetBeans IDE (6.7.1 or whatever you prefer) add configure 'JDK 1.5' Java platform and' NetBeans IDE 6.5.1' platforms there
* Get NBAdroid source and setup platform to compile against it
<pre>
cd ../..
mkdir src/kenai.com
cd src/kenai.com
hg clone https://kenai.com/hg/nbandroid~mercurial nbandroid
cd nbandroid~mercurial
echo "nbjdk.active=JDK_1.5" >>suite/nbproject/private/platform-private.properties
echo "nbplatform.active=NetBeans_IDE_6.5.1" >>suite/nbproject/private/platform-private.properties
echo "test.dist.dir=$ROOT/src/netbeans.org/release65/nbbuild/build/testdist" >>suite/nbproject/private/platform-private.properties
cd ..
</pre>
* Download Android SDK 1.1 and 1.5 and extract them into some directory. Again configure platform.properties
<pre>
cd ../..
wget http://dl.google.com/android/android-sdk-linux_x86-1.5_r3.zip
unzip -q android-sdk-linux_x86-1.5_r3.zip
wget http://dl.google.com/android/android-sdk-linux_x86-1.1_r1.zip
unzip -q android-sdk-linux_x86-1.1_r1.zip
echo "test-unit-sys-prop.test.all.android.sdks.home=$ROOT" >>src/kenai.com/nbandroid~mercurial/suite/nbproject/private/platform-private.properties
</pre>
* Start the IDE again and open *suite* project and dependent modules. Now you should be able to build them and run existing tests.
* Current publicly available bits are build using JDK 1.5 and Ant 1.7.1 and Hudson config file is in suite directory. Tested with Hudson 1.309 and its Cobertura plugin.





