2016-01-16 2 views
0

Итак, я взял курс Coursera, который заставил меня работать с внешними библиотеками. Два файла .jar, от которых зависело большинство еженедельных проектов.Java: Правильная организация внешних библиотек?

Я не совсем уверен, как затмение компилирует и запускает файлы и как оно связано с этими внешними библиотеками - что является правильным способом организации этого? Я помещаю копию каждого файла .jar в каждый каталог проекта?

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

Спасибо -

ответ

0

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

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

Теперь, если и когда вы получите новую версию, имена файлов могут измениться, поэтому вам по-прежнему придется менять путь к классам для каждого проекта.

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

0

Если вы хотите профессионально поддерживать свои библиотеки в официальной усадьбе, тогда вам лучше использовать инструмент построения, например Gradle of Maven.

Я предлагаю вам использовать Gradle для поддержки проекта, так как у него есть множество полезных инструментов построения, доступных вам для использования. Eclipse имеет доступный плагин Gradle, который позволяет вам использовать проекты Gradle. См. Ссылку ниже.

Чтобы дать вам представление о том, как Gradle используется профессионально. Android использует его по умолчанию для поддержки своих проектов. Поэтому в проектах Java java используется инструмент построения Gradle для поддержки источников библиотеки, процессов компиляции и т. Д.

Разница между проектом Gradle и нормальным проектом java заключается в том, что проект Gradle имеет список доступных для вас сценариев, который извлекает библиотеки, компилирует их и готовит их перед экспортом окончательного пакета (jar). Таким образом, все, что делает Gradle, прежде всего, извлекает библиотеки и готовит указанные инструменты перед компиляцией, поэтому вам не нужно возиться с ними самостоятельно. Он подготавливает ваш каталог проектов и удаленно поддерживает ваши библиотеки, поэтому, если они доступны из репозитория, тогда он обязательно подготовит их надлежащим образом и доработает ваши проекты.

В действительности разница, которую вы физически заметили, заключается в том, что вместо того, чтобы использовать кнопку экспорта Eclipse по умолчанию для создания вашего пакета (jar), вместо этого вы использовали бы кнопку из бокового меню, которое добавляет плагин Gradle, d чисто перечислите библиотеки в структурированном порядке в файле, который добавляется к вашему корню проекта.

Если вы хотите получить базовое представление о том, как это работает и действительно хотите начать профессиональную или формальную структуру вашего проекта, попробуйте создать очень простое Android-приложение в Android Studio.см. Ссылку ниже

Если это совсем не то, что вы хотите, и не хотите переходить на этот расширенный уровень, а затем добавление библиотек в какую-то папку lib, расположенную в корне вашего проекта, надлежащей передовой практики.

Если вам интересно, почему? В основном в разных проектах могут использоваться разные версии библиотеки, которые могут добавлять или удалять поддержку для них. Поэтому, чтобы согласовать версии и убедиться, что у вас есть подходящая версия, у вас есть прямой источник рядом с проектом.

Вот некоторая полезная ссылка: