3) After adding all the missing external libraries (such as jna, waffle, osgi...) it compiled successfully.
4) There are run time errors after testing the built library with a small test program:
(4.1) If jna and jna-platform are of version 5.0.0 or newer, the following line causes errors because no such a constructor exists:
SecBufferDesc continueToken = new SecBufferDesc(Sspi.SECBUFFER_TOKEN, receivedToken);
Note: Verson 5.0.0 (or newer) has only one constructor SecBufferDesc().
(4.2) If jna and jna-platform are of older version (4.5.2), SecBufferDesc does provide 3 different constructor, but the following code causes errors:
Class.forName("waffle.windows.auth.impl.WindowsSecurityContextImpl");
This class references SspiUtil$ManagedSecBufferDesc, which is only available from version 5.0.0 of jna-platform (or newer).
So basically the implementation of SSPIClient uses different JNA APIs from incompatible versions.
Would you please take a look?