Guide - Development on Mac OS X

1 Introduction

This guide is intended for developers and describes how to set up an Intershop development environment on Mac OS X.

2 Database

You can either use Oracle or MS SQL Server.

2.1 Oracle

2.1.1 Oracle Database

Use the oracle database either in a VM, a docker container or use an external database.

2.1.2 Oracle Client

  1. Download the Oracle Client for Mac OS.
  2. Modify oracleClientDir in environment.properties according to your environment.

    Info

    In case you get the error ORA-21561: OID generation failed when connecting to the database, edit the hosts file on the Mac to include a local computer name by adding the computer name to the end of the 127.0.0.1 line.
    For example, the last line of the hosts file would read: 127.0.0.1 localhost <local computer name>.

2.2 MS SQL

The following MS SQL docker container can be used:

https://github.com/IntershopCommunicationsAG/mssql-intershop-docker

2.2.1 Azure Data Studio

Azure Data Studio can be used as database tool, see Download and install Azure Data Studio:

Create Database
CREATE DATABASE intershop COLLATE Latin1_General_100_CI_AS;

2.2.2 environment.properties

Set the following environment.properties:


environment.properties
databaseType=mssql
intershop.jdbc.url =jdbc:sqlserver://localhost:1433;database=db
intershop.jdbc.user=intershop
intershop.jdbc.password=intershop

3 Intershop Studio

To set up Intershop Studio on Mac:

  1. Download and install standard Eclipse for Mac.
  2. Go to Help | Install New Software.
  3. Select Intershop Studio Update Site: http://support.intershop.com/estudio
    Internal: http://studio.intershop.de/updatesite/trunk  
  4. Install Intershop Studio Extensions

3.1 Additional Plugins

3.1.1 XText

3.1.2 Groovy Dev Tools

3.1.3 Xtend IDE

If you get an error message regarding org/eclipse/xtend/typesystem/MetaModel, you need to install the Xtend IDE:

3.2 JDK Used by Eclipse

Make sure that Eclipse is using the correct JDK by going to About Eclipse | Installation Details | Configuration, check for the -vm argument.

If the JDK version needs to be changed, follow this:

  1. Start Eclipse by double clicking the Eclipse application on MacOS.
  2. If you need to pass arguments to Eclipse,  edit the eclipse.ini file inside the Eclipse application bundle:
    1. Select the Eclipse application bundle icon while holding down the Control Key.
      A popup menu opens.
    2. Select Show Package Contents in the popup menu.
    3. Locate eclipse.ini file in the Contents/MacOS sub-folder and open it with your favorite text editor to edit the command line options.

3.3 Add the Cartridge Development Perspective

4 Increase Shared Memory

To increase shared memory:

  1. Edit /etc/sysctl.conf:

    Increase Shared Memory
    kern.sysv.shmmax=12582912
    kern.sysv.shmall=12582912


    or:

    Increase Shared Memory
    #on each reboot
    sudo sysctl -w kern.sysv.shmmax=12582912
    sudo sysctl -w kern.sysv.shmall=12582912

5 Deployment

The packages for Mac OS X are now also published in the Intershop Repository under OS-Id darwin and they should be used automatically when deploying with gradle on a Mac:

environment.properties:

environment.properties
platformId = darwin.x86_64


Mac-specific packages:

  • ivy-releases/com.intershop.infrastructure/runtime/3.0.3/zips/runtime-local-darwin.x86_64-3.0.3.zip
  • ivy-releases/com.intershop.infrastructure/tcm/3.0.3/zips/tcm-local-darwin.x86_64-3.0.3.zip
  • ivy-releases/com.intershop/3rd_apache/2.4.28.1/zips/3rd_apache-local-darwin.x86_64-2.4.28.1.zip
  • ivy-releases/com.intershop/webadapter/1.0.10/zips/webadapter-local-darwin.x86_64-1.0.10.zip

In gradle_environment.sh the command readlink is used, which does not exist on Mac OS X by default. However, this can be solved with the help of Homebrew :

  1. Use the following command:

    brew install coreutils
  2. Create an alias:

    alias readlink=greadlink

6 Set java.library.path (only 7.9)

To set the java.library.path:

  1. Edit tomcat.sh and add JAVA_OPTS=$JAVA_OPTS\ -Djava.library.path=$IS_HOME/lib.

7 Webserver and Web Adapter

To start the web server:

Start web server
cd local/httpd/bin
sudo ./apachectl -k start

If you get the error message ./apachectl: line 73: ulimit: open files: cannot modify limit: Invalid argument, you can edit apachectl and replace:

ULIMIT_MAX_FILES="ulimit -S -n `ulimit -H -n`"

with

ULIMIT_MAX_FILES=""

8 Start Application Server

To start the server:

Start server
cd server/local/bin
. ./environment.sh
./tomcat.sh

8.1 Application Server Start Using Eclipse

To start the application server using Intershop Studio's server view, the run configuration must be extended:

  1. Add the VM argument: -Djava.library.path="${IS_HOME}/lib" 
  2. Do the same for the debug configuration.
Disclaimer
The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.
Home
Knowledge Base
Product Releases
Log on to continue
This Knowledge Base document is reserved for registered customers.
Log on with your Intershop Entra ID to continue.
Write an email to supportadmin@intershop.de if you experience login issues,
or if you want to register as customer.