==
является -оператором , а equals()
является методом .
Операторы обычно используются для примитива и, следовательно, ==
используется для сравнения адресов памяти, а метод equals()
используется для сравнения объектов .
Мне сильно не нравится, делают из-за его неявного ruleset и обработки пробела. Лично я использовал бы cpp задачи (http://ant-contrib.sourceforge.net/cpptasks/index.html), чтобы сделать мою компиляцию C. Они не так гибки, как делают, но они также намного менее сложны, и это будет означать, что Вы не должны обременять своих разработчиков изучением, делают.
Как более простая альтернатива JNI, попробуйте JNA: https://jna.dev.java.net/, может решить эту стычку для Вас и быть более простым (предположение, что это может сделать то, что Вы хотите).
Я пропустил бы JNI полностью и использовал бы внешнюю программу, которая пишет уведомления на стандартном выводе. Java может затем просто читать из потока вывода программ и генерировать любое событие, необходимо. JNI является слишком большой работой, если все, что Вы хотите, должно отправить простые уведомления.
Кроме того, на Linux можно просто запустить "inotifywait" (с некоторыми подходящими параметрами, см. "человека inotifywait").
Я работаю над чем-то подобным прямо сейчас. Знайте, что использование большого глотка из swig.org часто легче, поскольку это генерирует тупики к собственной библиотеке для Вас.
Короткий ответ на Ваш вопрос - то, что файл муравья должен выполнить make-файл после того, как библиотека Java была уже создана, поскольку собственная библиотека зависит от сгенерированного заголовка большого глотка, который сгенерирован из файлов класса Java.
Если Вы будете супер знакомы с муравьем и не захотите изучать новую систему, то http://ant-contrib.sourceforge.net/cpptasks/index.html, также связанный другим плакатом, позволит Вам создать C++ у муравья.
Вы также можете попробуйте задачи terp C ++ в Codemesh . Они не бесплатны, но предлагают высокий уровень абстракции в сочетании с возможностью обнаруживать / указывать компилятор C ++ и возможностью перебирать более одного компилятора / архитектуры процессора / конфигурации компилятора для многоплатформенных сборок.