0


metasfresh开源ERP系统Windows开发环境配置参考

概述

Compiere闭源之后衍生出了Admpiere等若干开源的产品,metasfresh就是其中之一,metasfresh截至发稿时在GitHub上已有64000多次的修改提交,而且仍在维护中,其中5.175版本于23年6月分发布,具体可参考metasfresh的Github站点。

metasfres平台架构上采用了前后端分离的方式,前端js,可以单独部署,后端java+spring,可提供轻量端的web方式访问和传统的swing客户端方式访问,不同访问方式根据后端的服务类型来确定。

metasfres在与其他类型的java语言为主的erp项目相比,配置上还是有些复杂,这里就根据metasfresh社区提供的安装说明(参考:Development environment guide with Intellij and Docker-Compose - Setup - metasfresh ERP - Community forum)对配置过程中遇到的问题及解决方法进行了记录,供metasfresh爱好者参考。

开发环境

操作系统:Windows11

IDE工具:IDEA 2024 Ultimate

Java:jdk8(5.175分支),jdk17(master分支),maven3

Nodejs:16(测试版本过高,前端启动后接受请求时会报错)

RabbitMQ :3.11.16(可参考社区安装配置链接中使用docker来提供)

PostgreSQL:10(可参考社区安装配置链接中使用docker来提供)

配置过程

  • 代码下载,git项目源码到本地,这里需要注意的是目录规划,metasfresh开发环境的目录规划应当是:

     projectroot(假定你准备在这里完成metasfresh开发环境的配置)
    
          +.idea(idea项目文件夹,idea自动生成)
    
          +-----metasfresh(**git到这一层**)
    
          +----application.properties(metasfresh子目录\misc\dev-support下复制过来的配置文件目录)
    

  • 启动idea打开projectroot目录,然后退出(此步仅完成idea的项目目录的生成),将metasfresh\misc\dev-support\intellij-idea目录下的.idea下 的内容复制到projectroot下的idea中(覆盖原有内容)

  • 修改或复制本机maven配置文件,将metasfresh\misc\dev-support\maven下的settings.xml复制到本机的maven默认目录中(Windows,默认在%userprofile%.m2)覆盖或者自行合并内容。主要是以下的xml节点,合并是可根据本地文件内容进行修改,同时注意在<activeProfiles>节点将此内容添加,否则不会生效: <id>env-dev</id>

  • 打开命令行终端,确定java_home环境变量以及git可执行文件路径已经配置到命令行终端环境中,可通过查看。 java -versionmvn -vgit -v

  • 执行maven安装,在命令行顺序切换到metasfresh\misc\parent-pom,metasfresh\misc\de-metas-common,metasfresh\backend,执行maven安装: mvn -T 2C -DskipTests clean install安装过程中如果出现如下错误,则需要调整metasfresh\misc\parent-pom\pom.xml,在git-commit-id-plugin插件的configuration配置项中增加nativeGitTimeoutInMs,插件默认的是30000毫秒,也就是30秒,将这个值设置的更大些,就不会报下面的错误了:

  • 再次启动idea,首先检查项目的jdk版本是否与source的版本匹配,分别选择metasfresh\backend\pom.xml以及metasfresh\misc\parent-pom\pom.xml,metasfresh\misc\de-metas-common\pom.xml,在选中文件右键菜单中选择“添加为Maven项目”,等待加载完成即可。

  • idea中选择backend项目的pom.xml,执行maven菜单的generate source and folder(生成源码和目录),子项目中如果存在找不到类的错误,可以选择对应子项目的pom.xml单独生成,如果未出现找不到类错误,可忽略此步。

  • metasfresh的前端配置比较简单,在命令行切换到metasfresh\frontend,执行npm install即可,如果遇到依赖错误,则在命令行中增加--legacy-peer-deps参数

  • 建立数据库用户metasfresh/metasfresh(默认的,如果不同则需要修改application.properties下的相关文件,开发环境简化处理均使用默认的)导入初始数据。初始下载链接(https://metasfresh.com/wp-content/releases/db_seeds/metasfresh_latest.pgdump)。

  • idea中执行Run SQL Migrations运行配置

后端启动

  • 启动RabbitMQ(如果RabbitMQ 的服务端口不是5672,需要修改projectroot\application.properties\metasfresh\backend\metasfresh-webui-api\application.properties,将spring.rabbitmq.port设置为实际的端口)。
  • idea中启动WebRestApiApplication,启动前检查配置参数中 -DPropertyFile路径,由于从metasfresh\misc\dev-support\intellij-idea目录拷贝的配置中,默认使用的路径是C:\work-metas,因此需要修改为实际的路径。另外,开发环境可不使用elastic search,需要增加vm参数-Delastic_enable=false。

前端启动

  • 复制metasfresh\config.js.dist到metasfresh\config.js
  • 可通过idea中的start WEB-UI启动项启动或者通过命令行终端启动

登陆系统

其他

    metasfresh的swing端访问,在idea中分别启动ServerBoot和SwingUIApplication即可,登陆用户同轻量端。

    metasfresh本地化处理可登陆管理员权限,导出多语言文件(xml格式),翻译后再执行导入(还未经测试)![](https://img-blog.csdnimg.cn/direct/7066f8968cc54936bc279d9abcb04479.png)
标签: java 开源软件 ERP

本文转载自: https://blog.csdn.net/wl3721/article/details/139968640
版权归原作者 hot.wind 所有, 如有侵权,请联系我们删除。

“metasfresh开源ERP系统Windows开发环境配置参考”的评论:

还没有评论