Как создать свою собственную библиотеку Java (API)? - PullRequest
53 голосов
/ 31 августа 2010

Я создал программу на Java и разработал ее так, чтобы методы, которые я хочу, чтобы они появлялись (методы-получатели) в основном, я мог легко вызывать их после запуска класса, который содержит эти методы.

Вопрос в том, что мне нужно сделать это приложение (содержащее методы getter) похожим на API, чтобы я мог дать своему приложению разработчикам возможность использовать мои функции (методы getter), если они им нужны, и только то, что онинужно добавить этот файл (я думаю, что API после того, как это сделано, показан как файл .jar).

Как я могу сделать так, чтобы мой код можно было использовать повторно с другим приложением?Это похоже на .dll, я думаю.

Большое спасибо;)

Ответы [ 8 ]

49 голосов
/ 31 августа 2010

Создать JAR.Затем включите банку.Любые классы в этом JAR будут доступны.Просто убедитесь, что вы защищаете свой код, если вы предоставляете API.Не предоставляйте конечному пользователю какие-либо методы / свойства, которые не должны использоваться.

Редактировать: В ответ на ваш комментарий, убедитесь, что вы не включили источник при упаковке JAR.Включайте только файлы классов.Это лучшее, что вы можете сделать.

17 голосов
/ 31 августа 2010

Для использования в качестве API ваши классы должны:

  • Использовать уникальный пакет (в идеале в соответствии с соглашением, т. Е. Обратный домен, которым вы владеете в качестве префикса).Это предотвращает конфликты имен
  • . Имеют только те классы и методы public или protected, которые предназначены для использования другими.Это упрощает использование.
  • Наличие подробных комментариев Javadoc.
  • Доступность в виде файла JAR - в идеале отдельные JAR-файлы для двоичного распространения, исходного кода и файлов Javadoc.
10 голосов
/ 31 августа 2010

Вам необходимо упаковать ваше приложение в файл jar.Вы можете использовать задачу ant jar для создания файлов jar или команду jar.

Для задач муравья посмотрите эту ссылку .

Для создания вручную посмотрите эту ссылку .

6 голосов
/ 31 августа 2010

Убедитесь, что вы пишете и публикуете javadoc для всех ваших открытых и защищенных классов и методов.

5 голосов
/ 01 августа 2012

Для создания баночки:

jar cf <jar_name> <sources>
4 голосов
/ 31 августа 2010

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

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

0 голосов
/ 01 марта 2018

Вы также можете рассмотреть:

  • Включите несколько примеров, которые демонстрируют, как использовать вашу библиотеку
  • Создайте свою банку, используя Apache Maven
  • Поместите свою банку в публичный репозиторий maven
  • Публикуйте новую версию своей библиотеки по мере обнаружения / исправления ошибок
  • Если вы хотите скрыть свою реализацию, вы можете упаковать свой jar-файл с запутыванием, так что если кто-то декомпилирует ваши классы, код будет трудно прочитать
0 голосов
/ 22 августа 2015

Ну, это зависит от вашей IDE. Я использую Netbeans, так что я просто нажал на сборку проекта и альта! Файл JAR создается в указанном мной каталоге. Теперь это только для компиляции. Все, что нужно сделать, это загрузить файл .jar, а если вы используете Netbeans, щелкните правой кнопкой мыши библиотеки, добавьте jar / folder и выберите загруженный файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...