Skip to content

Installing the Java SDK


The SDKs are only currently supported on Linux and Windows running on x86 architectures. We currently do not support OsX.

Installation details

On Windows the ODBC driver must be installed when using the Java SDK.

Click here for installation instructions.

For Linux the jar file contains everything required to use the Java SDK. The Java SDK uses the following environment variables:

variable description
RT_REP_DIR Path where the replicator can be extracted to. It must be possible to execute a program from this location.
KXI_CONFIG_URL The URL that this program will call to find the endpoint(s) it will need to connect to. This will be in the following form https://\({INSIGHTS_HOSTNAME}/informationservice/details/\)
RT_LOG_PATH The location where the RT messages streams will be written to.

Supported data types

The following data types are supported by the Java SDK:

q type name q type number java type schema notation example
boolean -1 Boolean 'boolean' true
guid -2 UUID 'guid' 0f14d0ab-9605-4a62-a9e4-5ed26688389b
byte -4 Byte 'byte' 0xF4
short -5 Short 'short' 5
int -6 Integer 'int' or 'integer' 56789
long -7 Long 'long' 12345678
real -8 Float 'real' 2.5
float -9 Double 'float' 89.3
char -10 Character 'char' d
symbol -11 String 'symbol' LLOY
timestamp -12 java.sql.Timestamp 'timestamp' or 'ts' 2000.01.01D00:00:00.200000000
month -13 kx.c.Month 'month' 2002.02m
date -14 java.sql.Date 'date' 1999.12.31
datetime -15 java.util.Date 'datetime' 12.31,1999.12.31T23:59:59.999
timespan -16 kx.c.Timespan 'timespan' 00:00:00.000000000
minute -17 kc.c.Minute 'minute' 00:00
second -18 kx.c.Second 'second' 00:00:00
time -19 java.sql.Time 'time' 00:00:00
string 10 char[] 'string' "this is a string"


Only make text columns into symbols when the fields will be drawn from a small, reasonably stable domain and there is significant repetition in their use. When in doubt, start with a string column. It is much easier to convert a string column to symbols than it is to remove symbols from the sym list.


Because java.sql.Time does not have milliseconds, some precision will be lost if this type is used.