How-to: run JBoss AS 7 on an Android

First of all the disclaimer: you can brick your Android. Read the warnings before proceeding.

 

In essence we're going to install a chroot-ed environment in which we run JBoss AS 7 using OpenJDK on the booted (stock) Android Linux kernel.

 

Install a Debian Distribution

Use Linux Installer to create the chroot environment. Make sure to create a loop file which is large enough to hold the base installation, the JDK and JBoss AS 7 itself.

 

     I used 2GB and ended up with 743MB in use.

Install a JDK

Use your favorite package manager to install a JDK.

 

# aptitude install default-jdk

Create a jboss user

For security we create a jboss user and switch to it.

Add jboss user

Create a jboss user under which to run JBoss AS 7.

 

# useradd -m jboss

Add permission for jboss user

By default Android does not allow normal users access to network resources.

 

# addgroup --gid 3003 aid_inet

# adduser jboss aid_inet

 

https://issues.jboss.org/browse/AS7-3153

http://android-dls.com/wiki/index.php?title=Android_UIDs_and_GIDs

Switch to jboss user

# su - jboss

Install JBoss AS 7

Get JBoss AS 7 and boot it up.

Download and unpack

$ wget http://download.jboss.org/jbossas/7.1/jboss-as-7.1.0.CR1b/jboss-as-7.1.0.CR1b.tar.gz

$ tar zxf jboss-as-7.1.0.CR1b.tar.gz

Run

$ cd jboss-as-7.1.0.CR1b/bin

$ ./standalone.sh

 

Screenies