File: BUILD.java.md

package info (click to toggle)
collectd 5.12.0-27
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 10,160 kB
  • sloc: ansic: 120,848; perl: 20,684; php: 3,007; makefile: 2,441; java: 1,713; javascript: 920; python: 892; sh: 799; cpp: 638; yacc: 231; sql: 198; lex: 146; ruby: 49; xml: 44
file content (50 lines) | stat: -rw-r--r-- 1,551 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Building with Java

This file gives some background and hints how the *java plugin* needs to be
configured.

## Dependencies

The *java plugin* requires a version of Java with *Java Native Interface* (JNI)
**1.2** or later.

## Configure and flags

To determine the location of the required files of a Java installation is not an
easy task, because the locations vary with your kernel (Linux, SunOS, …) and
with your architecture (x86, SPARC, …) and there is no `java-config` script we
could use. Configuration of the JVM library is therefore a bit tricky.

The easiest way to use the `--with-java="${JAVA_HOME}"` option, where
`JAVA_HOME` is usually something like:

    /usr/lib/jvm/java-1.5.0-sun-1.5.0.14

The configure script will then use *find(1)* to look for the following files:

 *  `jni.h`
 *  `jni_md.h`
 *  `libjvm.so`

If found, appropriate CPP-flags and LD-flags are set and the following library
checks succeed.

If this doesn't work for you, you have the possibility to specify CPP-flags,
C-flags, LD-flags and LIBS for the *java plugin* by hand, using the following
environment variables:

 *  `JAVA_CPPFLAGS`
 *  `JAVA_CFLAGS`
 *  `JAVA_LDFLAGS`
 *  `JAVA_LIBS`

For example (shortened for demonstration purposes):

    ./configure JAVA_CPPFLAGS="-I$JAVA_HOME/include -I$JAVA_HOME/include/linux"

Adding `-ljvm` to JAVA_LIBS is done automatically, you don't have to do that.

## License

The *java plugin* is licensed under the *GNU General Public License, version 2*.
Full licensing terms can be found in the file `COPYING`.