api: 測試: 工具: web: webapp:
OpenMRS 是一個基於患者的醫療記錄系統,專注於為提供者提供免費的可自訂電子醫療記錄系統 (EMR)。
OpenMRS 的使命是透過協調全球社群來創建強大的、可擴展的、用戶驅動的開源醫療記錄系統平台,從而改善資源有限環境中的醫療保健服務。
OpenMRS 是一個 Java 應用程序,這就是為什麼您需要安裝 Java JDK 的原因。
如果你想建立 master 分支,你將需要一個最低版本為 8 的 Java JDK。
安裝建置工具 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
這將在webapp/target/openmrs.war
中產生 OpenMRS 應用程序,您必須將其部署到應用程式伺服器(例如 tomcat 或 jetty)。
出於開發目的,您可以透過以下方式簡單地將openmrs.war
部署到應用程式伺服器碼頭中
cd openmrs-core/webapp
mvn jetty:run
如果一切順利(檢查控制台輸出),您可以透過localhost:8080/openmrs
存取 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 容器。若要加快流程,請使用:
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 使用。
項目樹設定如下:
介面/ | 用於建構 java api jar 檔案的 Java 和資源檔案。 |
工具/ | 編譯和測試期間使用的元代碼。不進入任何已發布的二進位(如 doclet)。 |
網路/ | webapp/war 檔案中使用的 Java 和資源檔案。 |
網路應用程式/ | 用於建置 war 檔案的檔案(包含舊版本上的 JSP 檔案)。 |
pom.xml | 用於建置和打包 OpenMRS 的主 Maven 檔案。 |
要快速開發模組和 OpenMRS 平台程式碼,請查看以下很棒的 SDK:
https://wiki.openmrs.org/display/docs/OpenMRS+SDK
OpenMRS 具有模組化架構,可讓開發人員透過建立可輕鬆新增或刪除的模組來擴展 OpenMRS 核心功能,以滿足特定實現的需求。
在建立您自己的模組之前,請前往 OpenMRS 模組儲存庫並查看是否已有適合您的特定用例的模組。如果是這樣,請部署並嘗試它,如果缺少功能,請加入模組的開發人員以添加功能。
如果您尚未找到所需內容,請參閱模組 - wiki 以了解如何建立新模組。
如果您想做出貢獻,請參閱這些資源
如果您正在尋找有關如何安裝、配置、貢獻和擴展 OpenMRS 的詳細指南,請訪問
http://wiki.openmrs.org
如果您正在尋找有關 OpenMRS 作為組織的更多信息,請查看
http://openmrs.org
非常歡迎您的貢獻,我們絕對需要您的幫助!
OpenMRS 在開發者階段組織其貢獻者的權限,這些權限記錄在此。
請閱讀以下部分,以了解您可以在哪些方面提供協助。
查看我們的貢獻指南,通讀開發人員指南。
讀完之後?抓住一本Ready For Work
介紹性問題。
您可能沒有時間自行開發,但有足夠的 OpenMRS 和/或審查程式碼經驗,我們將非常感謝您在程式碼審查方面的幫助!
讀
https://wiki.openmrs.org/display/docs/Code+Review
並開始使用 re-:eyes: pull requests!
我們使用
https://www.transifex.com/openmrs/OpenMRS/
管理我們的翻譯。
此儲存庫中的messages.properties
檔案是我們的唯一事實來源。它包含預設英語的鍵值對。
Transifex 每晚都會取得此文件的更新,然後您和我可以在 Transifex 網站本身上進行翻譯。我們可以隨時將新翻譯從 transifex 拉回此儲存庫。其他語言如 for ex。西班牙語將出現在messages_es.properties
檔案中。
如果您想了解如何協助翻譯,請參閱
http://openmrs.org/join-the-community/translate/
如果您需要協助解決現有問題或發現錯誤並想告訴我們,請訪問
https://issues.openmrs.org
透過 OpenMRS Talk 與我們交談
MPL 2.0 含高清 © OpenMRS Inc.