incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Viktor Jevdokimov <vjevdoki...@gmail.com>
Subject How to enable JNA for Cassandra on Windows?
Date Thu, 22 Sep 2011 12:00:32 GMT
Hi,

I'm trying without success to enable JNA for Cassandra on Windows.

Tried to place JNA 3.3.0 libs jna.jar and platform.jar into Cassandra 0.8.6
lib dir, but getting in log:
Unable to link C library. Native methods will be disabled.

What is missed or what is wrong?

One thing I've found on inet about JNA and Windows is this sample:

// Library is c for unix and msvcrt for windows
String libName = "c";
if (System.getProperty("os.name").contains("Windows"))
{
  libName = "msvcrt";
}

// Loading dynamically the library
CInterface demo = (CInterface) Native.loadLibrary(libName, CInterface.class);


from http://www.scriptol.com/programming/jna.php

while in Cassandra:

try
    {
        Native.register("c");
    }
    catch (NoClassDefFoundError e)
    {
        logger.info("JNA not found. Native methods will be disabled.");
    }
    catch (UnsatisfiedLinkError e)
    {
        logger.info("Unable to link C library. Native methods will be
disabled.");
    }
    catch (NoSuchMethodError e)
    {
        logger.warn("Obsolete version of JNA present; unable to
register C library. Upgrade to JNA 3.2.7 or later");
    }


Is it true that for Windows Cassandra should do something like:

if (System.getProperty("os.name").contains("Windows"))
{
    Native.register("msvcrt");
}
else
{
    Native.register("c");
}



Thanks
Viktor

Mime
View raw message