У меня есть проект в Eclipse. Когда я запускаю его из Eclipse, все работает просто отлично. Однако, когда я запускаю скрипт сборки Ant и выполняю JAR либо из командной строки, либо с помощью пакетного скрипта, я получаю исключение NullPointerException.
Исключительная ситуация NullPointerException создается из стороннего JAR, который я скомпилировал из исходного кода. Но я сомневаюсь, что это проблема - это работает, когда я запускаю его в Eclipse!
Что может быть причиной, и как я могу выделить проблему и исправить ее?
Вот столько трассировки стека, сколько я могу показать:
java.lang.NullPointerException
at java.io.FilterInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at java.io.DataInputStream.readUnsignedByte(Unknown Source)
at com.jhlabs.dbf.DBFFile.readHeader(DBFFile.java:129)
at com.jhlabs.dbf.DBFFile.<init>(DBFFile.java:76)
at com.jhlabs.map.shapefile.Shapefile.<init>(Shapefile.java:102)
at com.jhlabs.map.layer.ShapefileLayer.<init>(ShapefileLayer.java:62)
Я проверил путь к классам - сторонний JAR действительно находится на пути к классам. Однако я ожидал, что, поскольку, скорее всего, я получу исключение NoClassDefFoundException, если это не так, и я попытался использовать классы в JAR.
Я также проверил места, где я использовал загрузчик классов, и они не были нулевыми и правильно загружали нужные файлы.