SpringBoot集成<个推推送> Maven 下载jar包异常处理本地打包下载
问题描述
公司需要对用户进行消息推送,选择了个推,由于是Java进行开发,个推操作文档,
这是官网上安装的方式,可是不成功,无论怎么样都无法把Jar包下载下来!
MAVEN方式(本人测试Jar无法下载)
<!--在Maven的pom文件中添加-->
<dependency>
<groupId>com.gexin.platform</groupId>
<artifactId>gexin-rp-sdk-http</artifactId>
<version>4.1.1.0</version>
</dependency>
<!--增加一个repository到 pom.xml 中-->
<repositories>
<repository>
<id>getui-nexus</id>
<url>http://mvn.gt.igexin.com/nexus/content/repositories/releases/</url>
</repository>
</repositories>
解决办法
将Jar包文件下载下来,也是官网上的第二种方法: 点我下载jar包
问题又来了,SpringBoot如何将jar包添加到项目中呢?
- 我想到的办法是(将本地的jar包使用maven打包到本地仓库中)(测试不通)
- 打包命令为:
语法: mvn install:install-file -Dfile=[jar包名称] -DgroupId=[包名称] -DartifactId=[项目名称] -Dversion=[版本号] -Dpackaging=jar
实例: mvn install:install-file -Dfile=gexin-rp-fastjson-1.0.0.4.jar -DgroupId=com.gexin.platform -DartifactId=gexin-rp-fastjson -Dversion=1.0.0.4 -Dpackaging=jar
很不幸,此办法对于<个推>来说是不可行的,<个推>中封装了很对类库,将jar包一个一个打包,运行起来类库无法被加载 会报异常的.
java.lang.ClassNotFoundException: com.google.protobuf.MessageOrBuilder
- 第二种办法(可行)
步骤如下:
1.在src同级目录新增 lib目录

2.将jar包粘贴到lib目录下

3.将lib目录添加到类路径中

4.在pom中添加resurces标签

标签内容为:<!--引入本地资源-->
<resources>
<resource>
<directory>lib</directory>
<targetPath>BOOT-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</resources>
此时已完成Jar文件的添加.就可以编写<个推>上的实例代码了!如果将SpringBoot打包为jar包的话会出现问题!如何解决?
在pom中添加依赖
<!--推送相关的Jar 文件
注意: 以下的坐标信息,
<groupId>
<artifactId>
<version>
简称GAV,以下的GAV内容并不重要
需要添加对应的本地jar 文件
<scope>system</scope>
<systemPath>${project.basedir}/lib/xxxx.jar</systemPath>
-->
<dependency>
<groupId>com.gexin.platform</groupId>
<artifactId>gexin-rp-sdk-http</artifactId>
<version>4.0.1.17</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gexin-rp-sdk-http-4.1.1.0.jar</systemPath>
</dependency>
<dependency>
<groupId>com.gexin.platform</groupId>
<artifactId>gexin-rp-sdk-base</artifactId>
<version>4.0.0.32</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gexin-rp-sdk-base-4.0.0.32.jar</systemPath>
</dependency>
<dependency>
<groupId>com.gexin.platform</groupId>
<artifactId>gexin-rp-fastjson</artifactId>
<version>1.0.0.4</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gexin-rp-fastjson-1.0.0.4.jar</systemPath>
</dependency>
<dependency>
<groupId>com.gexin.platform</groupId>
<artifactId>gexin-rp-sdk-template</artifactId>
<version>4.0.0.25</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gexin-rp-sdk-template-4.0.0.25.jar</systemPath>
</dependency>
<dependency>
<groupId>java.gubin</groupId>
<artifactId>protobuf</artifactId>
<version>0.1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/protobuf-java-2.5.0.jar</systemPath>
</dependency>
完成!
SpringBoot集成<个推推送> Maven 下载jar包异常处理本地打包下载的更多相关文章
- eclipse中maven项目jar包不会自动下载解决办法
Eclipse中maven从远程仓库中下载jar包有时会很慢,有些甚至进度停止不动,这个时候我们可能会终止当前下载,但是终止jar包下载后会出现一个问题,再次打开Eclipse时,你会发现提示你项目中 ...
- maven下载依赖jar包失败处理方法--下载jar包到本地并安装到maven仓库中
所有maven依赖jar包地址:https://repo1.maven.org/maven2/org/apache/ 1. 安装jar包失败报错: The following artifacts co ...
- JAVA Maven 安装 jar 包到本地仓库,以 Oracle11g 的访问包 为例
maven 作为 java 的首选包管理工具,使我们在创建和维护项目的时候变得十分简单,但是 maven 仓库并不是拥有的一切 jar 包的, 很多 jar 包由于收费或者版权什么的其他原因,并不存在 ...
- 在maven 2工程中加入iTextAsian支持(maven添加自定义jar包到本地仓库)
最近需要在工程中加入JasperReports,其中要用到把报表导出为pdf文件的功能.JasperReports内部使用iText来输出pdf文档,而iText对中文是放在单独的包iTextAsia ...
- Maven手工安装jar包到本地仓库
使用maven,少不了的就是要被"包下载失败"这种问题折腾. jar包下载失败后.我们选择手工把jar下载下来.(能够下载到指定jar的途经非常多) 以下随便找了一个jar包为例. ...
- Maven 添加jar包到本地仓库
一.使用Maven命令安装jar包 前提:在windows操作系统中配置好了Maven的环境变量,怎么配置请自己百度,这里不介绍,可参考https://jingyan.baidu.com/articl ...
- maven 将jar包添加本地仓库源
有如下jar包 zxing3.2.1.jar zxingcore.jar QRCode.jar 存在于本机目录 D:\Program Files\eclipse_workspace\webapp\We ...
- maven打jar包,导入本地jar
本地jar包存放目录 项目目录/lib/*.jar 导入jar包配置 <resources> <!--扫描到的配置yml--> <resource> <dir ...
- maven 提取jar包 依赖及打包排除
<properties> <project.targetDir>D:\jar</project.targetDir> <project.targetServe ...
随机推荐
- C语言:缓冲区
缓冲区(Buffer)又称为缓存(Cache),是内存空间的一部分.也就是说,计算机在内存中预留了一定的存储空间,用来暂时保存输入或输出的数据,这部分预留的空间就叫做缓冲区(缓存).有时候,从键盘输入 ...
- C预处理跨平台
#include <stdio.h> //不同的平台下引入不同的头文件 #if _WIN32 //识别windows平台 #include <windows.h> #elif ...
- Attention和Transformer详解
目录 Transformer引入 Encoder 详解 输入部分 Embedding 位置嵌入 注意力机制 人类的注意力机制 Attention 计算 多头 Attention 计算 残差及其作用 B ...
- ssm框架下 数据库连接异常 java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents more
1.错误截图 2.修改操作 我是在框架的中连接的数据库,如果在类中把 &换成& 修改前代码 <property value="com.mysql.jdbc.Dri ...
- git 强推本地分支覆盖远程分支
git 强推本地分支覆盖远程分支git push origin 分支名 --force
- 第一篇 -- Go环境的搭建以及Hello World程序编写
VS Code的下载和安装 1. 下载链接(本人下载版本VSCodeUserSetup-x64-1.57.0.exe) https://code.visualstudio.com/download 友 ...
- python中的生成器,迭代器及列表生成式
列表生成器: 即List Comprehensions. 在python中,可通过内置的强大有简单的生成式来创建列表.例如创建一个1到10的列表list [1, 2, 3, 4, 5, 6, 7, ...
- Resnet网络详细结构(针对Cifar10)
Resnet网络详细结构(针对Cifar10) 结构 具体结构(Pytorch) conv1 (conv1): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, ...
- Mol Cell | 张令强/贺福初/魏文毅/刘翠华揭示线性泛素化调控血管生成新机制
景杰学术 | 报道 泛素化修饰作为主要的蛋白质翻译后修饰之一,与细胞周期.应激反应.信号传导和DNA损伤修复等几乎所有的生命活动密切相关[1].泛素分子通常含有7个赖氨酸残基,通过这些残基可以和其他泛 ...
- Run Shell Commands in Python
subprocess.call This is the recommended way to run shell commands in Python compared with old-fashio ...
