I am looking for a Java library to interface with standard Unix functions, i.e. stat(), getpwuid(), readlink().
This used to e
I don't know any library with the Unix functions.
for most of the functions, I believe, you can use the standard Java API to do what you want. for example, there's no need to use the command ls to read the files of some directory. but in some specific cases, like stat (to find out if a file is a link) you have to use JNI.
JNA-POSIX is stagnant currently, as far as I know.
The developers went on to create JNR-POSIX
I'm aware of two compelling projects:
Personally I like very much JNA. Take a look at this example of mine, mapping link(2):
import com.sun.jna.Library;
import com.sun.jna.Native;
class Link {
private static final C c =
(C) Native.loadLibrary("c", C.class);
private static interface C extends Library {
/** see man 2 link */
public int link(String oldpath, String newpath);
}
@Override
protected void hardLink(String from, String to) {
c.link(to, from);
}
}
I would be surprised to see one, considering it would almost necessarily be platform-specific. Java is not the best tool for that job. But you could certainly hook in via JNI or calls out to external programs if you insist. Or perhaps look into Groovy, which I understand is reasonably good for shell scripting, though I have no personal experience with it.