Maven问题总结

admin 2019-7-22 124

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 


少客联盟- 版权声明 1、本主题所有言论和图片纯属会员个人意见,与少客联盟立场无关。
2、本站所有主题由该帖子作者发表,该帖子作者admin少客联盟享有帖子相关版权。
3、少客联盟管理员和版主有权不事先通知发贴者而删除本文。
4、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者admin少客联盟的同意。
5、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任。
6、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。
7、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意。
8、官方反馈邮箱:chinasuc@chinasuc.cn


上一篇:开发流程模型
下一篇:亲历者明日独家讲述K8s界“赤壁之战” | 开发者必读(022期)
Whatever is worth doing is worth doing well. juvenile hacker league
最新回复 (0)
    • 少客联盟
      2
        登录 注册 QQ登录(停用)
返回