Next: 3. Programming GNUstep in Up: 2. Quick Overview of Previous: 2.1 Components of JIGS

Subsections

- 2.2.1 Starting a Java VM inside an Objective-C program
- 2.2.2 Using the GNUstep Base and Gui Libraries from Java
- 2.2.3 Using Other GNUstep Libraries from Java

# 2.2 Which Components are Used for What

## 2.2.1 Starting a Java VM inside an Objective-C program

To start a Java Virtual Machine and access Java from an Objective-C GNUstep program, you need only the JIGS core engine. It must be said that this will not work out the box. You need to find out what libraries you need to link with in order to start a Java Virtual Machine from native code in your Java Environment, because of a lack of standardization between different Java Environments. It's just a couple of library flags for the compiler, but it can be painful, and non-portable. The example is in `Testing/Objc`. If you are lucky, you might also find the flags for your java platform there.

## 2.2.2 Using the GNUstep Base and Gui Libraries from Java

To use the GNUstep Base and Gui libraries from Java, you only need the JIGS core engine and the GNUstep Base and Gui libraries wrappers. Once you have installed JIGS, it should just work out of the box. The examples are in `Testing/Java/`.

## 2.2.3 Using Other GNUstep Libraries from Java

To use a generic GNUstep Objective-C library from Java, you need the JIGS core engine, and wrappers for that library. To generate the wrappers, you need to use the WrapCreator tool. Complete examples of wrapping a library and then accessing it from Java are in `Tools/WrapCreator/Examples/`.

Next: 3. Programming GNUstep in Up: 2. Quick Overview of Previous: 2.1 Components of JIGS