WeChatFerry/clients/java/wcf-bmc/pom.xml

213 lines
8.1 KiB
XML
Raw Normal View History

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.18</version>
</parent>
<artifactId>wcf-bmc</artifactId>
<packaging>jar</packaging>
<name>wcf-bmc</name>
<version>39.5.1.1</version>
<description>WeChatFerry Springboot Maven Client (WCF-Springboot的Maven版客户端)</description>
2025-05-02 20:22:23 +08:00
<scm>
<url>https://github.com/PathfinderAx/WeChatFerry</url>
</scm>
<properties>
<application.main.class>com.wechat.ferry.WeChatFerryApplication</application.main.class>
<app.name>wcf-bmc</app.name>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--thymeleaf-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!-- 日志 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<!-- Lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
<scope>provided</scope>
</dependency>
<!-- 参数校验 -->
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
<!-- swagger3包-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
<!-- Alibaba Fastjson -->
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
<version>2.0.52</version>
</dependency>
<dependency>
<groupId>org.dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>2.1.3</version>
</dependency>
<!-- httpclient依赖 -->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.13</version>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>3.22.2</version>
</dependency>
2025-03-12 18:12:39 +08:00
<!-- JNA主要用于在 Java 程序中方便地调用本地Native代码如 C/C++ 的动态链接库DLL或共享库SO -->
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>5.6.0</version>
</dependency>
<!-- 配置文件加解密 -->
<!-- <dependency>-->
<!-- <groupId>com.github.ulisesbocchio</groupId>-->
<!-- <artifactId>jasypt-spring-boot-starter</artifactId>-->
<!-- <version>3.0.5</version>-->
<!-- </dependency>-->
<!-- orm 相关 -->
<!-- <dependency>-->
<!-- <groupId>com.baomidou</groupId>-->
<!-- <artifactId>mybatis-plus-annotation</artifactId>-->
<!-- <version>3.5.7</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>com.baomidou</groupId>-->
<!-- <artifactId>mybatis-plus-extension</artifactId>-->
<!-- <version>3.5.7</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>com.baomidou</groupId>-->
<!-- <artifactId>mybatis-plus-boot-starter</artifactId>-->
<!-- <version>3.5.7</version>-->
<!-- </dependency>-->
<!-- mysql数据库驱动 -->
<!-- <dependency>-->
<!-- <groupId>com.mysql</groupId>-->
<!-- <artifactId>mysql-connector-j</artifactId>-->
<!-- <version>8.0.33</version>-->
<!-- </dependency>-->
<!-- 引入本地lib -->
<dependency>
<groupId>io.sisu.nng</groupId>
<artifactId>nng-java</artifactId>
<version>1.4.0-SNAPSHOT</version>
<!-- system表示依赖不是由maven仓库而是本地的jar包 -->
<scope>system</scope>
<!-- jar包位置 -->
<systemPath>${project.basedir}/src/main/resources/libs/nng-java-1.4.0-SNAPSHOT.jar</systemPath>
</dependency>
</dependencies>
<build>
<!-- 最终 Jar 包的名字 -->
<finalName>${app.name}-${project.version}</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
<!-- 排除特定资源 -->
<excludes>
<exclude>bin/*</exclude>
<exclude>proto/*</exclude>
<exclude>sql/*</exclude>
</excludes>
</resource>
</resources>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId>
<version>1.5.0.Final</version>
</extension>
</extensions>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<finalName>${app.name}-${project.version}</finalName>
<includeSystemScope>true</includeSystemScope>
<mainClass>${application.main.class}</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- 同时添加maven插件用于编译protobuf生成java文件 -->
<plugin>
<groupId>org.xolstice.maven.plugins</groupId>
<artifactId>protobuf-maven-plugin</artifactId>
<version>0.5.0</version>
<configuration>
<!-- 注意,需要与 com.google.protobuf:protobuf-java 一致 -->
<protocArtifact>
com.google.protobuf:protoc:3.22.2:exe:${os.detected.classifier}
</protocArtifact>
<!-- 默认值proto源文件路径 -->
<protoSourceRoot>${project.basedir}/src/main/resources/proto</protoSourceRoot>
<!-- 默认值proto目标java文件路径如果不指定则只在jar与编译中生成 -->
<outputDirectory>src/main/java</outputDirectory>
<pluginId>grpc-java</pluginId>
<!-- 设置是否在生成java文件之前清空outputDirectory的文件默认值为true设置为false时也会覆盖同名文件 -->
<clearOutputDirectory>false</clearOutputDirectory>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>