2013-07-23 3 views
9

Во-первых, это очень важный вопрос. Но, будучи младшим разработчиком, мне никогда не приходилось импортировать и работать с другими Java-платформами. Стандартная библиотека всегда была достаточно хороша для меня, чтобы написать классы, которые мне нужно было написать.Работа с и импорт внешних библиотек/фреймворков в Java

Но теперь, столкнувшись с более «расширенными» концепциями, мне нужно начать работать с внешними фреймами, например. JSON для Java, Apache HttpClient для Java и так далее. И я ищу базовое понимание того, как это работает и как нужно импортировать эти библиотеки, чтобы вы могли начать работать с классами ...

Итак, мое первоначальное понимание заключается в том, что каждый из этих fraemworks предоставит вам файл .jar, содержащий все классы для фреймворка. Затем вы импортируете в свой проект, и вот, вы сможете использовать классы/библиотеки в своем проекте, просто импортировав его, например. 'import org.json. *;'

Правильное ли понимание?

ответ

4

Исправить.

Вы просто добавляете библиотеки в свой путь к классам и теперь можете использовать классы из этих библиотек. Как вы добавляете libs в ваш путь к классам, зависит от вашей реальной среды разработки. Например, если вы используете Apache Maven, вам просто нужно определить зависимости (libs) в ваших проектах pom.xml, а Maven загружает их автоматически для вас.

НТН,
- мартин

+0

Спасибо за указание мне в Maven, выглядит очень полезно. Я только когда-либо слышал об этом, возможно, пришло время начать использовать его. – Tiwaz89

3

EDIT: Ниже применяется только если вы не используете автоматизированные сборки-инструменты, такие как Maven или Ivy

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

При выполнении из командной строки выполните:

java -cp /path/to/library:. path.to.main 

:. надо так, что JVM будет найти свой основной метод.

В среде IDE вы должны иметь возможность включить библиотеку в свой путь к классам через меню опций.

Тогда вы можете просто использовать библиотеку третьей стороны, как и любой другой:

import name.of.library.class; 
//Do something 
+0

Спасибо! 2 Вопросы, хотя, во-первых, когда вы добавляете эти банки в свой CLASSPATH, то, разумеется, когда вы в конечном итоге компилируете свой проект и распространяете его, он не сможет работать в других системах, так как они также должны иметь определенную библиотеку в CLASSPATH? И, во-вторых, сторонние фреймворки всегда предоставляют свои библиотеки в форме банок или иногда они также предоставляют прямые файлы .java? – Tiwaz89

+1

ad 1) да, другим нужно будет также включить библиотеки в свой CLASSPATH. Maven предоставляет плагин сборки, чтобы справиться с этой проблемой. Подробнее см. Http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven. ad 2) JAR - это только ZIP-архив. Обычно он содержит скомпилированные классы (файлы .class), но также может содержать источники (.java-файлы).Проекты OpenSource обычно предоставляют исходные и двоичные JAR для своих проектов большую часть времени. Например, вы можете искать Центральный репозиторий Maven http://search.maven.org/. –

+0

@ MartinHöller - Еще раз спасибо, теперь все это имеет гораздо больше смысла. В основном, что я прошу, (2) Какие типы файлов должны быть в вашем CLASSPATH? файлы .java, файлы .class или файл .jar (даже если это всего лишь zip-архив, то, что находится внутри этого архива. .java или .class файлы?) – Tiwaz89

Смежные вопросы