Я новичок в Java и пытаюсь понять, как структурировать файлы моей программы.
Я скачал библиотеку ( jnotify ), которая содержит как jar
, так и zip исходного кода Java.
Пока что моя программа работает только путем извлечения исходного кода jnotify в каталог верхнего уровня программы. Таким образом, исходные файлы jnotify повсюду, а код моей программы находится в подкаталоге.
$ ls /path/to/project
CHANGELOG
inotify-syscalls.h
jnotify_64bit.dll
jnotify.dll
libnotify.so
my-projects-actual-files/
net/
README
... etc
Я импортирую jnotify так:
# myprogram/program.java
import net.contentobjects.jnotify.*;
... code body here ...
И запустить его, явно установив java.library.path
:
$ java -Djava.library.path=. myprogram/Program
Это кажется неправильным, но я понятия не имею, как устроен Java для организации исходных файлов и библиотек.
Как мне выровнять структуру моей программы, чтобы jnotify
находился в чем-то вроде lib/jnotify
, но мог бы быть разумно импортирован, скомпилирован и запущен?