У меня есть класс, который находится в пакете с именем com.toptur.sysTray, все, что он делает, это загружает системный трей, он не использует никаких внешних пакетов. я создаю объект SysTray для установки в системный трей. Все строит нормально. я могу запустить приложение из командной строки и Systray будет установлен. Но когда я пытаюсь создать банку из файлов класса и запустить ее, я получаю NoClassDefFoundError.
Пакет и его файлы классов находятся в jar, мое приложение не использует ant jar external. просто классы, предоставляемые Java.
И если создать из файла .exe файл .exe, он снова начинает работать без ошибок.
Как я могу отследить это?
<target name="jar" depends="">
<jar destfile="build/toptur.jar" >
<manifest>
<attribute name="Built-By" value="Toptur"/>
<attribute name="Main-Class" value="gotacan"/>
</manifest>
<fileset dir="build">
<include name="**/*.class"/>
<include name="**/*.png"/>
<exclude name="**/*.jar"/>
</fileset>
</jar>
Я создаю JAR-файл из муравьиной цели, используя приведенный выше код. Драйвер программы отсутствует в пакете. находится в gotacan.java
Я запускаю его, используя java -jar toptur.jar
остальная часть программы работает, она выдает исключение, только когда я пытаюсь использовать этот пакет.