Почему Eclipse экспортирует весь проект в качестве исполняемого JAR файла?

У меня есть Java-проект под названием Project1, содержащий около десяти пакетов. В package3 у меня есть класс под названием MyPrgm, который я хочу экспортировать как исполняемую банку. Это нормально, и я могу выполнить его в командной строке/с помощью командного файла.
 Однако, когда я открываю архив MyPrgrm.jar, используя WinRAR, я понимаю, что каждый отдельный класс Project1 находится в архиве; есть ли способ экспортировать только классы, необходимые для запуска программы? Я использую Eclipse IDE.

Ответ 1

Он делает это, потому что вы сказали это. Если вы хотите экспортировать только один пакет, то экспортируйте только один пакет. Например, если вы щелкните правой кнопкой мыши по проекту и нажмите "Экспорт", Eclipse попытается экспортировать все в проект, но вы можете легко настроить его с помощью мастера экспорта. Если вы щелкните правой кнопкой мыши на пакете и выберите "Экспорт", Eclipse попытается экспортировать только этот пакет.

В частности, посмотрите раздел "Спецификация файла Jar" мастера экспорта, в котором вы можете выбрать и выбрать, что экспортировать.

Ответ 2

Если вам не нужны все классы в JAR, выберите экспорт только для этого конкретного пакета, а не для всего проекта.

Даже если вышеуказанное не работает (нет причин, почему это не должно), вы все равно можете удалить дополнительные классы из исполняемого файла. JAR - это в основном ZIP-архив, вы можете открыть его с любым менеджером архивов и добавлять/удалять файлы по своему усмотрению.