Maven问题总结

简介: Maven问题总结

1.jar包下载失败,导致生成lastUpdated文件

第一次因为没有联网或者或者其它原因,导致下载jar失败,以后依然下载失败。
原因 : 因为第一次下载失败时,会在~\.m2\repository 中生成对应jar包的lastUpdated文件,如xxx.jar.lastUpdated,
因为有这个lastUpdated文件,所以以后都不会真正下载xxx.jar.lastUpdated。 <br>
解决方法:

 1. 在执行mvn <commond>之前把lastUpdated 文件删除
 2. 直接拷贝一个jar到此目录下

2.Maven缺少依赖包,强制更新

mvn clean install -e -U
-e详细异常,-U强制更新

3.mvn deploy

  1. 要直接上传jar,必须在主pom中添加对应的repository
   <distributionManagement>
        <repository>
            <id>releases</id>
            <name>Nexus Release Repository</name>
            <url>your releases repositories url</url>
        </repository>
        <snapshotRepository>
            <uniqueVersion>false</uniqueVersion>
            <id>snapshots</id>
            <name>Nexus Snapshot Repository</name>
            <url>your snapshot repositories url</url>
        </snapshotRepository>
    </distributionManagement>
  1. 如果只想上传jar,不想上传war
    在不想上传的工程pom里面添加
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-deploy-plugin</artifactId>
            <configuration>
                <skip>true</skip>
            </configuration>
    </plugin>
  1. 如果想单独上传某个jar
mvn deploy:deploy-file -DgroupId={groupId} -DartifactId={artifactId} -Dversion={version} -Dpackaging=jar -Dfile={path} -Durl={your repository url} -DrepositoryId={your repository id}

DgroupId和DartifactId构成了该jar包在pom.xml的坐标

Dfile表示需要上传的jar包的绝对路径
Durl私服上仓库的位置,打开nexus——>repositories菜单,可以看到该路径。
DrepositoryId服务器的表示id,在nexus的configuration可以看到。
Dversion表示版本信息,怎样得到一个jar包准确的版本呢?

如果单独上传某个jar,而项目为多模块的时候,开发新的迭代版本的时候,更新了一下新版本的jar,同时更新了父模块的版本号,此时必须把父模块的pom.xml deploy到私服上,否则报错。 **因为**     子模块的打包方式为jar,父模块的打包方式 为pom,,子模块依赖于父模块,所以会报错。

如果报错,极有可能是url或者repositoryId写错了

Access denied to: {}.jar, ReasonPhrase: Forbidden.

检查是否缺少权限,在 .m2/settings.xml中配置权限


作者:glowd
原文:https://blog.csdn.net/zengqiang1/article/details/52841090
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
|
流计算 API Apache
Apache Flink 零基础入门(一):基础概念解析
本文是根据 Apache Flink 基础篇系列直播整理而成,由 Apache Flink PMC 戴资力与阿里巴巴高级产品专家陈守元共同分享。Apache Flink 系列入门教程每周更新一期,持续推送。
Apache Flink 零基础入门(一):基础概念解析
|
定位技术 API 数据格式
Element UI【详解】el-cascader 级联选择器 - 行政区划选择(可以选择任意一级),限定选择范围,获取并解析选中的节点
Element UI【详解】el-cascader 级联选择器 - 行政区划选择(可以选择任意一级),限定选择范围,获取并解析选中的节点
2410 0
|
小程序 开发工具 开发者
小程序使用 组件库 vant-weapp详细教程
小程序使用 组件库 vant-weapp详细教程
318 0
|
机器学习/深度学习 编解码 算法
无感验证码的工作原理
无感验证码是一种隐形的身份验证机制,通过分析用户行为(如鼠标移动、点击)和设备信息来辨别真实用户,防止机器人攻击。工作流程包括页面加载验证脚本、收集行为和设备数据、传输数据至服务器端进行分析、返回验证结果。示例代码展示了如何收集鼠标事件和设备信息,并发送到服务器。实际应用中,需采用更复杂算法和安全措施以确保安全性。
|
存储 JSON 安全
Oauth2.0 + JWT 做权限认证
做过权限认证的朋友都清楚,SpringSecurity 的功能很强大,但是我们也都知道,它配置起来也着实让人头疼。N多个配置类还有N多个需要实现的接口,总是记不住和不知道为什么会有这么多,最近在学习这方面的东西,正好能够把学习到的东西分享出来给大家参考一下。
|
应用服务中间件 Windows Shell
在Weblogic上创建和启动自己的Server
             在Weblogic上创建和启动自己的Server的步骤: 1. 启动nodemanager 在windows下从命令窗口启动nodemanager的方式,在命令窗口执行%MW_HOME%/wlserver/server/bin/startNodeManager.cmd [监听地址] [监听端口],如:%MW_HOME%/wlserver/bin/startNodeManager.cmd 127.0.0.1 5556。
1229 0
|
Ubuntu Unix
Ubuntu开启NTP时间同步
Ubuntu开启NTP时间同步
17499 0
|
分布式计算 大数据 MaxCompute
操作系统顶级会议SOSP 阿里云MaxCompute开启NewSQL时代
  近日,第26届操作系统原理大会(SOSP)在上海举行,来自亚洲、欧洲、北美等地区的高校、学术机构和众多科技企业研究人员齐聚一堂。阿里巴巴受邀参加此次会议,除在展区展示系统软件技术的同时,阿里集团副总裁周靖人在BOF环节向参会人员介绍了阿里在数据库、计算、机器学习、网络等领域的多项重点技术。
3550 0
|
4天前
|
人工智能 运维 安全