API: тест: инструменты: веб: веб-приложение:
OpenMRS — это система медицинских карт пациентов, предназначенная для предоставления поставщикам услуг бесплатной настраиваемой системы электронных медицинских карт (EMR).
Миссия OpenMRS — улучшить оказание медицинской помощи в условиях ограниченных ресурсов путем координации глобального сообщества, которое создает надежную, масштабируемую, управляемую пользователем платформу системы медицинских записей с открытым исходным кодом.
OpenMRS — это приложение Java, поэтому вам необходимо установить Java JDK.
Если вы хотите создать главную ветку, вам понадобится Java JDK минимальной версии 8.
Установите инструмент сборки Maven.
Вам необходимо убедиться, что Maven использует Java JDK, необходимый для ветки, которую вы хотите построить.
Для этого выполните
mvn -version
который сообщит вам, какую версию использует Maven. Если вам нужно настроить Maven, обратитесь к документации Maven.
Установите инструмент контроля версий git и клонируйте этот репозиторий с помощью
git clone https://github.com/openmrs/openmrs-core.git
После того, как вы позаботились о предварительных условиях
Выполните следующее
cd openmrs-core
mvn clean package
Это создаст приложение OpenMRS в webapp/target/openmrs.war
, которое вам нужно будет развернуть на сервере приложений, например, tomcat или jetty.
В целях разработки вы можете просто развернуть openmrs.war
на причале сервера приложений через
cd openmrs-core/webapp
mvn jetty:run
Если все пойдет хорошо (проверьте вывод консоли), вы сможете получить доступ к приложению OpenMRS по адресу localhost:8080/openmrs
.
Дополнительную информацию о полезных командах Maven и параметрах сборки см. в разделе «Начало работы в качестве разработчика — Maven».
Сборки Docker все еще находятся в стадии разработки. Мы ценим любые отзывы и улучшения процесса.
Единственное необходимое условие — это Docker.
Чтобы собрать версию для разработки, выполните:
docker-compose build
По умолчанию он вызывает mvn install
. Если вы хотите настроить аргументы сборки mvn, вы можете сделать это, выполнив:
docker-compose build --build-arg MVN_ARGS= ' install -DskipTests '
Также можно использовать встроенный образ разработчика для запуска Jetty:
docker-compose up
Чтобы собрать производственную версию, выполните:
docker-compose -f docker-compose.yml build
Сначала он создает образ разработчика, а затем образ с Tomcat и openmrs.war. Он не имеет зависимостей от разработчиков.
Производственную версию можно запустить с помощью:
docker-compose -f docker-compose.yml up
Если вы хотите выполнить отладку, вам необходимо запустить разрабатываемую версию и подключить отладчик к порту 8000, который открыт по умолчанию.
К сожалению, на этом этапе любые изменения кода требуют полного перезапуска и пересборки докер-контейнера. Чтобы ускорить процесс, используйте:
docker-compose build --build-arg MVN_ARGS= ' install -DskipTests '
docker-compose up
Мы работаем над обеспечением поддержки функции автоматической перезагрузки Spring Boot, которая будет документирована здесь, как только она будет готова.
Также возможно развернуть образ, созданный нашим CI, который опубликован по адресу https://hub.docker.com/r/openmrs/openmrs-core.
Вы можете запустить любой доступный тег с помощью:
TAG=nightly docker-compose -f docker-compose.yml up
Также можно запустить разрабатываемую версию образа с помощью:
TAG=dev docker-compose up
Все разрабатываемые версии содержат суффикс dev. Суффикс кэша предназначен для использования нашим CI.
Дерево проекта устроено следующим образом:
API/ | Java и файлы ресурсов для создания jar-файла Java API. |
инструменты/ | Метакод, используемый во время компиляции и тестирования. Не входит ни в один выпущенный двоичный файл (например, в доклеты). |
сеть/ | Java и файлы ресурсов, которые используются в файле webapp/war. |
веб-приложение/ | файлы, используемые при создании файла war (содержит файлы JSP в более старых версиях). |
pom.xml | Основной maven-файл, используемый для сборки и упаковки OpenMRS. |
Для быстрой разработки модулей и кода платформы OpenMRS воспользуйтесь великолепным SDK по адресу
https://wiki.openmrs.org/display/docs/OpenMRS+SDK
OpenMRS имеет модульную архитектуру, которая позволяет разработчикам расширять основные функциональные возможности OpenMRS путем создания модулей, которые можно легко добавлять или удалять в соответствии с потребностями конкретной реализации.
Прежде чем создавать собственный модуль, зайдите в репозиторий модулей OpenMRS и посмотрите, существует ли уже модуль для вашего конкретного случая использования. Если да, разверните и попробуйте его, а если функциональность отсутствует, присоединяйтесь к разработчикам модуля, чтобы добавить функцию.
Если вы не нашли то, что искали, обратитесь к «Модулю — вики», чтобы узнать, как создать новый модуль.
Если вы хотите внести свой вклад, пожалуйста, обратитесь к этим ресурсам
Если вы ищете подробные руководства по установке, настройке, использованию и расширению OpenMRS, посетите
http://wiki.openmrs.org
Если вы ищете дополнительную информацию об OpenMRS как проверке организации
http://openmrs.org
Взносы очень приветствуются, нам обязательно пригодится ваша помощь!
OpenMRS организует привилегии своих участников на этапах разработки, которые описаны здесь.
Прочтите следующие разделы, чтобы узнать, где вы можете помочь.
Ознакомьтесь с нашими рекомендациями по участию и прочтите руководства для разработчиков.
После того, как вы прочитали? возьмите вводный выпуск « Ready For Work
.
Возможно, у вас нет времени на саморазвитие, но у вас достаточно опыта работы с OpenMRS и/или проверки кода, поэтому ваша помощь в проверке кода будет очень признательна!
Читать
https://wiki.openmrs.org/display/docs/Code+Review
и начните с re-:eyes: пул-реквестов!
Мы используем
https://www.transifex.com/openmrs/OpenMRS/
для управления нашими переводами.
Файл messages.properties
в этом репозитории — наш единственный источник истины. Он содержит пары ключ-значение для английского языка, который используется по умолчанию.
Transifex каждую ночь получает обновления этого файла, которые затем мы с вами можем перевести на самом веб-сайте transifex. В любой момент мы можем вернуть новые переводы из transifex обратно в этот репозиторий. Другие языки, например, например. Тогда испанский будет в файле messages_es.properties
.
Если вы хотите узнать, как помочь с переводами, см.
http://openmrs.org/join-the-community/translate/
Если вам нужна помощь в устранении существующих проблем или вы обнаружили ошибку и хотите сообщить нам, перейдите по ссылке
https://issues.openmrs.org
Поговорите с нами на OpenMRS Talk
MPL 2.0 с HD © OpenMRS Inc.