Что такое источник JAR?

Недавно я пытался импортировать библиотеку, чтобы использовать ее для чего-то, над чем я работаю.

https://sites.google.com/site/piotrwendykier/software/jtransforms

У меня были некоторые трудности, потому что JAR, который я добавил к пути сборки, был "JTransforms-3.0-sources.jar", а не "JTransforms-3.0.jar".

Теперь я как бы ломаю голову и просто задаюсь вопросом, что это был за первый sources.jar, если в нем нет ни одного из классов, которые я хотел бы использовать в нем.

Что это такое и для чего?

Ответ 1

Этот источник jar представляет собой банку, которая содержит только исходный код (файлы .java), соответствующие скомпилированному артефакту. Полезно добавить его как исходное вложение в вашу среду IDE, опубликовать источники и т.д.

Поскольку он содержит только источники, а не скомпилированные классы (файлы .class), он не нужен в качестве зависимости от библиотеки.

Ответ 2

Что это:. JAR файлы источника - это JAR файл, который содержит только файлы исходного кода, т.е. .java, и не скомпилированные файлы .class. Например, вы можете загрузить исходные файлы OpenJDK ™ из http://download.java.net/openjdk/jdk8/

Что это для:. Это полезно для других разработчиков, чтобы они могли "присоединить источник" и отлаживать исходный код проекта.

Ответ 3

Артефакт source используется IDE, а не людьми. Если вы используете зависимости maven, IDE достаточно умен, чтобы знать, как найти артефакты. Артефакт source используется при пошаговом выполнении кода в отладчике - вам больше не нужно явно привязывать исходный код к библиотекам в IDE.

Подробнее здесь