# supos-app-maven-plugin **Repository Path**: supos-help/supos-app-maven-plugin ## Basic Information - **Project Name**: supos-app-maven-plugin - **Description**: maven plugin 用于生成符合supOS上架规范的安装包 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-11-20 - **Last Updated**: 2022-04-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 用于生成符合supOS上架规范的安装包 ## 环境要求 apache maven: 3.5+ ## 使用方法 ### 安装插件 使用命令行工具进入supos-app-maven-plugin的根目录,并执行mvn install 安装插件 命令行代码: ``` mvn install ``` ![](image01.png) 出现如下“BUILD SUCCESS”表示成功安装到本地maven仓库 ![](image02.png) ### 在Maven工程中pom文件加入该插件的坐标信息 当前插件的版本为1.0.0 ``` com.supos.plugin supos-app-maven-plugin 1.0.0 此处放入配置信息,configuration具体配置请往下看 ``` ![](image08.png) ### 配置configuration参数 插件生成配置文件会从这些属性中获取信息,开发者可以在示例的基础上进行修改 ### 字段含义 | 属性名称 | 含义 | 是否必填 | | ------ | ------ |------ | | app.apiVersion | APP平台API的版本号,默认为v1alpha1 |否| | app.showName | 相对于name的一个扩展名称,当apiVersion为v2alpha1时,必填 |否| | app.vendorName | 定义APP开发者或组织的名称,由英文字符、数字组成 |是| | app.name | 应用名称,默认取值project.name |是| | app.appVersion | 版本号,默认取值project.version |是| | app.description | 应用描述,默认取值project.description |是| | compose.replicas | 副本个数,默认1|否| | compose.containersName | 容器名称,默认server |否| | compose.containerPort | 容器端口,默认8080|否| | compose.mountPath | mountPath,默认/server-data|否| | compose.requestsMemory | 副本个数,默认512Mi|否| | compose.resourcesCpu | 副本个数,默认1000m|否| | compose.limitsMemory | 副本个数,默认1024Mi|否| | compose.limitsCpu | 副本个数,默认2000m|否| | compose.portsPort | 副本个数,默认8080|否| | compose.portsTargetPort | 副本个数,默认8080|否| | compose.proxyPath | 副本个数,默认/|否| | compose.proxyServicePort | 副本个数,默认8080|否| | vendor.bluetronId | supOS开发者ID |是| | vendor.organization | 组织名称 |是| | vendor.url | 组织网址 |是| | vendor.email | 组织邮箱 |是| | vendor.copyright | 组织版权 |是| | vendor.address | 组织地址 |是| | baseDockerImage | 基础镜像地址 |是| ### 示例 ``` supossamples ${project.name} ${project.version} ${project.description} 1 server 8080 /server-data 512Mi 1000m 1024Mi 2000m 8080 8080 / 8080 123123 bluetron www.123.com 123@qq.com bluetron (c) 2019
杭州市滨江区
registry.supos.ai/library/openjdk:8-jdk-alpine
``` ### 在命令行窗口进入工程的根目录 例如: ``` D: cd D:\git\saas-app ``` ### 执行工程的打包命令 ``` mvn clean package ``` ### 执行生成APP配置文件命令 ``` mvn supos-app:generate -Dfile.encoding=UTF-8 ``` 执行完成并提示“BUILD SUCCESS” 后,会在项目根目录/target下生成supos文件夹,里面包含生成好的配置文件 ![](image05.png) ### 手动配置data/resource.yaml 页面配置文件 进入data目录,用文本工具打开resource.yaml,根据示例填写页面配置信息,并保存 ![](image06.png) ### 配置Dockerfile文件 因为Dockerfile相对自定义程度较高,开发者需要将自己的Dockerfile文件编写好,放到/bin目录下,样例可以参考通过本插件生成的Dockerfile ### 执行生成符合supOS规范的安装包 ``` mvn supos-app:packageInstallationFile ``` 最后会在工程的target目录下生成{project-name}-{version}-Final.zip文件 ![](image07.png)