This will create a MacOS X standard directory layout and startup configuration for use with launchd.

Note that this does not give all possible methods of downloading and building. Those are described in the Installation Procedures for UNIX.

Therefore it is assumed that you have a binary .tar.gz at ~/Download/apache-servicemix-3.x.tar.gz.

Directory Setup

  1. sudo mkdir /Library/ServiceMix
  2. cd /Library/ServiceMix
  3. sudo mkdir Versions
  4. cd Versions
  5. sudo tar -xzf /Download/apache-servicemix-3.2.tar.gz
  6. sudo ln -s apache-servicemix-3.2 Current
  7. cd ..
  8. sudo ln -s Versions/Current/bin/ bin
  9. sudo ln -s Versions/Current/conf/ conf
  10. sudo ln -s Versions/Current/data/ data
  11. sudo ln -s Versions/Current/examples/ examples
  12. sudo ln -s Versions/Current/hotdeploy/ hotdeploy
  13. sudo ln -s Versions/Current/lib/ lib

Note that this assumes the 3.2 directory layout which contains a hotdeploy. For earlier versions replace the hotdeploy with a soft link for deploy and install.

launchd Configuration

Create org.apache.servicemix.plist using Property List Editor with the following entries:

Property List Class Value
Root Dictionary  
  EnvironmentVariables Dictionary  
    JAVA_HOME String /Library/Java/Home
  Label String org.apache.servicemix
  OnDemand Boolean No
  Program String /Library/ServiceMix/bin/servicemix
  ProgramArguments Array  
    0 String /Library/ServiceMix/bin/servicemix
  ServiceDescription String Apache ServiceMix JBI Container
  StandardErrorPath String /Library/ServiceMix/data/log/error.log
  StandardOutPath String /Library/ServiceMix/data/log/console.log
  WorkingDirectory String /Library/ServiceMix
  1. sudo cp org.apache.servicemix.plist /Library/LaunchDaemons
  2. sudo chown root:wheel /Library/LaunchDaemons/org.apache.servicemix.plist
  3. sudo chmod 644 /Library/LaunchDaemons/org.apache.servicemix.plist