问题描述

公司需要对用户进行消息推送,选择了个推,由于是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包异常处理本地打包下载的更多相关文章

  1. eclipse中maven项目jar包不会自动下载解决办法

    Eclipse中maven从远程仓库中下载jar包有时会很慢,有些甚至进度停止不动,这个时候我们可能会终止当前下载,但是终止jar包下载后会出现一个问题,再次打开Eclipse时,你会发现提示你项目中 ...

  2. maven下载依赖jar包失败处理方法--下载jar包到本地并安装到maven仓库中

    所有maven依赖jar包地址:https://repo1.maven.org/maven2/org/apache/ 1. 安装jar包失败报错: The following artifacts co ...

  3. JAVA Maven 安装 jar 包到本地仓库,以 Oracle11g 的访问包 为例

    maven 作为 java 的首选包管理工具,使我们在创建和维护项目的时候变得十分简单,但是 maven 仓库并不是拥有的一切 jar 包的, 很多 jar 包由于收费或者版权什么的其他原因,并不存在 ...

  4. 在maven 2工程中加入iTextAsian支持(maven添加自定义jar包到本地仓库)

    最近需要在工程中加入JasperReports,其中要用到把报表导出为pdf文件的功能.JasperReports内部使用iText来输出pdf文档,而iText对中文是放在单独的包iTextAsia ...

  5. Maven手工安装jar包到本地仓库

    使用maven,少不了的就是要被"包下载失败"这种问题折腾. jar包下载失败后.我们选择手工把jar下载下来.(能够下载到指定jar的途经非常多) 以下随便找了一个jar包为例. ...

  6. Maven 添加jar包到本地仓库

    一.使用Maven命令安装jar包 前提:在windows操作系统中配置好了Maven的环境变量,怎么配置请自己百度,这里不介绍,可参考https://jingyan.baidu.com/articl ...

  7. maven 将jar包添加本地仓库源

    有如下jar包 zxing3.2.1.jar zxingcore.jar QRCode.jar 存在于本机目录 D:\Program Files\eclipse_workspace\webapp\We ...

  8. maven打jar包,导入本地jar

    本地jar包存放目录 项目目录/lib/*.jar 导入jar包配置 <resources> <!--扫描到的配置yml--> <resource> <dir ...

  9. maven 提取jar包 依赖及打包排除

    <properties> <project.targetDir>D:\jar</project.targetDir> <project.targetServe ...

随机推荐

  1. C语言:const详解

    希望定义这样一种变量,它的值不能被改变,在整个作用域中都保持固定.例如,用一个变量来表示班级的最大人数,或者表示缓冲区的大小.为了满足这一要求,可以使用const关键字对变量加以限定:const in ...

  2. Spring Boot 2.x基础教程:使用Elastic Job实现定时任务

    上一篇,我们介绍了如何使用Spring Boot自带的@Scheduled注解实现定时任务.文末也提及了这种方式的局限性.当在集群环境下的时候,如果任务的执行或操作依赖一些共享资源的话,就会存在竞争关 ...

  3. Linux + .net core 开发升讯威在线客服系统:首个经过实际验证的高性能版本

    业余时间用 .net core 写了一个在线客服系统.并在博客园写了一个系列的文章,写介绍这个开发过程: .net core 和 WPF 开发升讯威在线客服系统:目录 https://blog.she ...

  4. Springboot+Mybatis+小程序

    思维导图: 项目效果图 一览界面: 新增界面:

  5. 第八篇--编写Windows服务

    编写service服务参考网址:https://blog.csdn.net/nodeathphoenix/article/details/24181509 vc获得显示器状态(捕获息屏.亮屏网址):h ...

  6. (opencv5)轮廓检测函数

    (opencv5)轮廓检测函数 contours, hierarchy = cv2.findContours(img, mode, method,[offset) 注意 : 1.输入为二值图像,黑色为 ...

  7. 用Ubuntu的命令行来远程访问Jupyter Notebook

    远程访问Jupyter Notebook 相关配置:Ubuntu 16.04服务器,本地Win10,使用了Xshell,Xftp工具. 相关配置主要分为三步: 服务器上的Jupyter配置 本地Xsh ...

  8. 如何开启MySQL远程连接

    MySql-Server 出于安全方面考虑只允许本机(localhost, 127.0.0.1)来连接访问,这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说 ...

  9. vue页面初始化

    HTML: <div id="app"> <input type="" class="app" v-model=" ...

  10. .NET Core/.NET5/.NET6 开源项目汇总12:WPF组件库2

    系列目录     [已更新最新开发文章,点击查看详细] WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Frame ...