Мастер PHP | Maven и PHP

  1. Установить Maven
  2. Создайте свой первый проект
  3. Eclipse Integration
  4. Резюме

Apache Maven - это инструмент автоматизации сборки, предназначенный для создания, составления отчетов и создания документации по проектам. Он строит проекты с использованием объектной модели проекта (POM) и набора плагинов, общих для всех проектов, использующих Maven, тем самым обеспечивая единую систему сборки. Когда вы ознакомитесь с тем, как создается один проект Maven, вы автоматически узнаете, как создаются все проекты Maven. Это сэкономит вам огромное количество времени от попыток навигации по процессу сборки различных проектов.

В этой статье вы познакомитесь с Maven для PHP, а также с тем, как установить и использовать плагин PHP-Maven из командной строки и в Eclipse.

Установить Maven

PHP-Maven использует возможности Maven для создания, составления отчетов и создания документации ваших проектов PHP. Он адаптирует жизненный цикл сборки Maven к миру PHP, полностью поддерживая PHP 5. PHP-Maven использует PHPUnit для модульного тестирования и PhpDocumentor для создания проектной документации.

Чтобы установить Maven:

  1. Скачать Maven из http://maven.apache.org/download.cgi , Для этой статьи версия 3.0.4.
  2. Распакуйте архив в любое место, где вы хотите хранить двоичные файлы, и папка с именем apache-maven- <версия> будет создана.
  3. Добавьте его папку bin в вашу PATH.
  4. Убедитесь, что JAVA_HOME настроен на местоположение вашего JDK.

После того, как вы выполнили вышеуказанные шаги, чтобы проверить, правильно ли установлен Maven или нет, вы должны запустить mvn --version из командной строки.

После успешной установки Maven перейдите в файл settings.xml (находится в ~ / .m2 в Unix / Mac OS X и в C: Documents and Settingsusername.m2 в Windows) и добавьте репозиторий PHP для Maven. Если файл settings.xml отсутствует, его необходимо создать.

Ниже приведен пример файла settings.xml:

<настройки> <профили> <профиль> <id> profile-php-maven </ id> <pluginRepositories> <pluginRepository> <id> release-repo1.php-maven.org </ id> <name> PHP-Maven 2 Репозиторий релизов </ name> <url> http://repos.php-maven.org/releases </ url> <release> <enabled> true </ enabled> </ Release> </ pluginRepository> <pluginRepository> <id > snapshot-repo1.php-maven.org </ id> <name> Хранилище снимков PHP-Maven 2 </ name> <url> http://repos.php-maven.org/snapshots </ url> <Release> <enabled> false </ enabled> </ release> <snapshots> <enabled> true </ enabled> </ snapshots> </ pluginRepositories> </ pluginRepositories> <repositories> <repository> <id> release-repo1.php- maven.org </ id> <name> Репозиторий релизов PHP-Maven 2 </ name> <url> http://repos.php-maven.org/releases </ url> <release> <enabled> true </ enabled > </ release> </ repository> <repository> <id> snapshot-repo1.php-maven.org </ id> <name> Репозиторий моментальных снимков PHP-Maven 2 </ name> http: // repos. php-maven.org/snapshots </ url> <release> <enabled> false </ enabled> </ Release> <снимки ts> <enabled> true </ enabled> </ snapshots> </ repository> </ repositories> </ profile> </ profile> <activeProfiles> <activeProfile> profile-php-maven </ activeProfile> </ activeProfiles> < / настройки>

Создайте свой первый проект

Для создания простого проекта из командной строки я буду использовать Maven Архетип Плагин , Плагин Archetype позволяет пользователю создать проект Maven из существующего шаблона, называемого архетипом. Вы можете запустить плагин Maven Archetype с помощью команды mvn archetype: generate для создания нового проекта из архетипа в папке, соответствующей его идентификатору артефакта.

Maven начнет загрузку всех зависимостей, необходимых для вашего компьютера. В какой-то момент Maven попросит вас определить значение для groupId, artifactId, version и package, как вы видите здесь:

Обратите внимание, что на официальном Страница плагина Maven Archetype Вы найдете все доступные параметры вместе с их описанием.

После успешного создания вашего первого проекта вы должны найти следующее в соответствующей папке, в моем случае Octavia_project:

После успешного создания вашего первого проекта вы должны найти следующее в соответствующей папке, в моем случае Octavia_project:

  • src / main / php - содержит исходный код проекта.
  • src / test / php - содержит тестовый код проекта.
  • src / site - содержит дескриптор сайта проекта.
  • pom.xml - содержит описание POM проекта.

Содержимое pom.xml выглядит так:

<? xml version = "1.0" encoding = "UTF-8"?> <project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns: xsi = "http: //www.w3 .org / 2001 / XMLSchema-instance "xsi: schemaLocation =" http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd "> <parent> <groupId> org.phpmaven </ groupId> <artifactId> php-parent-pom </ artifactId> <версия> 2.0.2 </ version> </ parent> <modelVersion> 4.0.0 </ modelVersion> < groupId> org.phpsample </ groupId> <artifactId> Octavia_project </ artifactId> <packaging> php </ packaging> <версия> 1.0-SNAPSHOT </ version> <build> <плагины> <plugin> <groupId> org.phpmaven </ groupId> <artifactId> maven-php-plugin </ artifactId> <extensions> true </ extensions> </ plugin> <plugin> <groupId> org.apache.maven.plugins </ groupId> <artifactId> maven- site-plugin </ artifactId> <версия> 3.0 </ version> <конфигурация> <reportPlugins> <plugin> <groupId> org.phpmaven </ groupId> <artifactId> maven-php-plugin </ artifactId> <reportSets> < reportSet> <reports> <report> phpdocumentor </ report> <report> phpunit-покрытие </ repor t> <report> phpunit </ report> </ reports> </ reportSet> </ reportSets> </ plugin> </ reportPlugins> </ configuration> </ plugin> </ plugins> </ build> <зависимости> < ! - phpUnit для PHP 5 -> <зависимость> <groupId> de.phpunit </ groupId> <artifactId> PHPUnit </ artifactId> <версия> 3.6.10 </ версия> <тип> phar </ type> < / зависимость> </ зависимости> </ проект>

Этап тестирования наступает после создания приложения, и для этого вам нужна зависимость PHPUnit. Если он отсутствует, обязательно добавьте его в файл pom.xml, как показано выше.

Тесты PHPUnit должны быть помещены в папку src / test / php, а тест должен называться Somthing Test.php, то есть суффикс «Test.php» является обязательным. Мой тест, MyTest.php, указан ниже:

<? php класс MyTest extends PHPUnit_Framework_TestCase {public function testBar () {include "org / sample / app.php"; $ this-> fail ("мы потерпим неудачу"); }}

Для выполнения теста вы используете команду mvn test. В официальной документации есть раздел Как игнорировать провальные тесты , и вы можете найти там некоторые команды, которые могут помочь вам запустить ваш тест. (Единственная команда, которая фактически работала для меня, была той, которая выполнила единственный тест.)

)

Чтобы создать свой только что созданный проект Maven, вы запускаете команду mvn: package. Вы снова заметите, что Maven автоматически начинает загрузку любых зависимостей, необходимых для вашего проекта.

После загрузки всех необходимых зависимостей и выполнения действий по сборке вы должны получить следующее сообщение об успехе:

Для создания документации из проекта вам понадобится Пакет phpDocumentor 2 PEAR , В папке src / site создайте файл site.xml со следующим содержимым:

<? xml version = "1.0" encoding = "ISO-8859-1"?> <project name = "Maven"> <version position = "left" /> <skin> <groupId> org.apache.maven.skins < / groupId> <artifactId> maven-stylus-skin </ artifactId> <версия> 1.0 </ version> </ skin> <body> <links> <item name = "PHP-Maven" href = "http: // www .php-maven.org / "/> </ links> <menu name =" Main "> <item name =" Welcome "href =" index.html "/> </ menu> <menu ref =" reports "/ > </ body> </ project>

Затем запустите команду mvn site, и вы найдете результаты в папке target / site.

Eclipse Integration

Плагин php-maven поддерживает интеграцию с Eclipse IDE, но по умолчанию не содержит плагин php-maven. Вы должны интегрировать это вручную. Для этого выполните следующие действия:

  1. В меню «Справка» выберите «Установить новое программное обеспечение» и нажмите кнопку «Добавить…».
  2. В окне «Добавить репозиторий» введите имя: «Сайт обновления PHPMaven» и URL-адрес http://www.php-maven.org/eclipse/update .
  3. Сайт обновления PHPMaven указан в списке, и вы можете выбрать опцию PHP-Maven.
  4. Нажмите Next / Finish, чтобы установить плагины.

Нажмите Next / Finish, чтобы установить плагины

После установки вы найдете опцию проекта PHP-Maven при создании нового проекта. Выберите его и нажмите Далее, чтобы установить плагин.

Чтобы создать новый проект в Eclipse, выберите «Файл»> «Новый»> «Другой» (или нажмите комбинацию CTRL + N), и вы должны увидеть что-то похожее на изображение ниже:

Чтобы создать новый проект в Eclipse, выберите «Файл»> «Новый»> «Другой» (или нажмите комбинацию CTRL + N), и вы должны увидеть что-то похожее на изображение ниже:

После нажатия кнопки «Далее» вы получите список различных архетипов.

После нажатия кнопки «Далее» вы получите список различных архетипов

Выберите свой артефакт, и вам будет предложено ввести информацию о проекте, как и ранее в командной строке.

Выберите свой артефакт, и вам будет предложено ввести информацию о проекте, как и ранее в командной строке

Новый проект будет добавлен на вкладку Project Explorer. Структура папок в основном аналогична структуре проекта, созданного из командной строки.

После создания проекта щелкните правой кнопкой мыши по нему, и вы увидите опцию PHP-Maven в нижней части меню, а ее дочерние элементы перечисляют наиболее важные фазы проекта PHP-Maven.

Резюме

В этой статье вы узнали, как установить и использовать плагин PHP-Maven из командной строки и в Eclipse. Maven for PHP - это эффективный инструмент автоматизации сборки для платформы PHP. Используя Maven, пользователю нужно только предоставить конфигурацию для проекта, в то время как настраиваемые плагины выполняют работу по компиляции проекта, запуску модульных тестов, созданию документации API и так далее. Maven для PHP быстро станет необходимым инструментом в наборе инструментов разработчика PHP.

Изображение через Fotolia

Похожие

Если вы хотите превратить ваше Android-устройство в компас, разработчик Уильям Дж. Фрэнсис покажет вам...
Если вы хотите превратить ваше Android-устройство в компас, разработчик Уильям Дж. Фрэнсис покажет вам, как сделать это за пять простых шагов. Изображение: iStock / koya79 Когда-нибудь задумывались, как работает компас? Я никогда не думал
Я приглашаю вас прочитать гостевую запись Marcin Pachla, частного автора блог о музыке Kinta.com.pl...
Я приглашаю вас прочитать гостевую запись Marcin Pachla, частного автора блог о музыке Kinta.com.pl
Проверка клиентской формы с помощью HTML5
При создании веб-приложений важно серьезно относиться к безопасности, особенно когда это связано со сбором данных от пользователей. Общим принципом безопасности является не доверять никому, поэтому никогда не доверяйте пользователю вводить правильные или действительные значения формы. Например, в поле формы электронной почты вместо ввода действительного адреса электронной почты пользователь может ввести неверный адрес или вредоносные данные, явно игнорирующие намерение запроса.
11 полезных инструментов для проверки, очистки и оптимизации вашего файла CSS
... проектом с открытым исходным кодом, существует несколько сайтов, которые используют код и превратили его в онлайн-инструмент для людей. Вот некоторые из них: Другие оптимизаторы CSS CSS-оптимизатор FlumpCakes Простой оптимизатор, который поставляется с несколькими вариантами для вас на выбор.
QuarkXPress теперь поддерживается в macOS Sierra
... php?f=56&t=27713"> http://forums.quark.com/viewtopic.php?f=56&t=27713 QuarkXPress 2015 - поддерживается с известными проблемами Если вы используете QuarkXPress 2015 на Sierra, которая официально поддерживается комбинацией QuarkXPress и операционной системы, то имейте в виду, что это поддерживается рядом известных проблем, специфичных для Sierra. Вы можете прочитать об известных проблемах здесь:
Использование групповой политики для распространения JRE с отключенным автоматическим обновлением
По умолчанию среда выполнения Java (JRE) Sun Microsystems включает функцию автоматического обновления, которая загружает и устанавливает последнюю версию JRE. Эта функция может вызвать проблемы в корпоративной сети. Чтобы избежать проблем, вы можете использовать объект групповой политики Microsoft Windows (GPO) для развертывания JRE с отключенной функцией автоматического обновления. Кроме того, объект групповой политики скрывает вкладку «Обновление» JRE. Java от Sun Microsystems
Как установить темы в Ubuntu 17.10 и выше
Теперь, когда Ubuntu использует GNOME в качестве среды рабочего стола, а не Unity, вы уже получаете отточенный внешний вид GNOME. Он также открывает вашу Ubuntu в мире расширений GNOME, где вы можете скачать сотни красивых тем. Это руководство протестировано для работы в Ubuntu 17.10. Он должен работать без проблем на более высоких версиях, если он основан на GNOME! Во-первых, давайте поговорим о нескольких аспектах темы. 1. ГТК Темы Тема GTK содержит виджеты
Windows XP Professional 64-разрядная ISO скачать бесплатно [SP3]
64-разрядная версия Microsoft Windows XP Professional с пакетом обновления 3 является последней версией Win XP. Загрузите бесплатную 64-разрядную версию ISO для Windows XP по нашей прямой ссылке, доступной для пользователей Softlay.net. Удивительно, но даже после 13 долгих лет эта ОС не подводила своих пользователей. Он включает в себя оригинальные SP1 и SP2 в официальной загрузке ISO. Лицензия Ключ продукта Операционные системы
MasterCard Gold бесплатно ► интеллектуальное использование или метод выщипывания?
Читатели все еще просят у меня статью о « бесплатной карте MasterCard Gold » из предложения Advanzia Bank. Собственно, по нашему специализированный портал Мы представляем только участников, которые могут быть полностью рекомендованы. ...
Как запускать приложения Firefox OS в вашем браузере Android
Реклама Теперь вы можете установить приложения Firefox OS на Android. Firefox для Android поддерживает Mozilla «Открытые веб-приложения», что позволяет устанавливать и запускать приложения Firefox OS непосредственно на устройстве Android. Firefox Marketplace теперь функционирует как альтернативный магазин приложений для Android, так же как Amazon App Store
Как использовать программу AdChoice
Что такое программа AdChoice? Во время поиска, просмотра и других действий, выполняемых пользователями на eBay и связанных сайтах, мы собираем информацию, которую мы можем использовать для показа объявлений, наиболее подходящих для пользователя. Мы также можем сотрудничать с другими веб-сайтами или рекламными сетями, предоставляя им информацию, позволяющую им показывать персонализированную рекламу и в других местах в Интернете. Предоставляемая нами информация не позволяет вам идентифицировать
Encoding = "UTF-8"?
Encoding = "ISO-8859-1"?
Изображение: iStock / koya79 Когда-нибудь задумывались, как работает компас?
Php?
Php?