В настоящее время я использую ImageJ jar (ij.jar) в приложении Java, которое я создаю, и мне удалось все работать. Тем не менее, существует вероятность того, что, когда я исполняю строку:Проверьте, есть ли у ImageJ открытое изображение
ImagePlus image = new ImagePlus(path);
(где путь пользователь указан путь к изображению), изображение может не быть там. Библиотека ImageJ не будет выдавать ошибку до тех пор, пока не будут доступны методы image
, и в это время ImageJ будет печатать на консоли There are no images open.
и прекратить выполнение программы. Я считаю, что ImageJ на самом деле вызывает System.exit()
, когда он печатает эту строку, так как мое приложение заканчивается, включая потоки Deamon.
Есть ли способ использовать ImageJ для проверки того, было ли изображение успешно открыто? Или я должен просто проверить, существует ли файл с использованием класса файлов Java?
EDIT:
Чтобы уточнить, это многопоточное приложение, которое может пытаться открыть и обрабатывать большое количество изображений одновременно. Класс ImageJ (IJ
) имеет функции для открытия изображений, но IJ
является одноэлементным классом и, следовательно, имеет нечетное поведение при одновременном одновременном вызове IJ.openImage("string")
.