配置本地目录,
不使用默认的用户目录,避免占用C盘
在用户的主目录下创建.m2/settings.xml,自动生效,不建议修改默认的配置文件;
简单的配置仓库本地目录,国内源地址,账号密码即可,示例如下:
${HOME}/.m2/settings.xml:
<settings>
<localRepository>/path/to/yourdir</localRepository><!-- 配置本地仓库使用的目录 -->
<servers>
<server>
<id>serverid对应repoid</id>
<username>登录用户</username>
<password><![CDATA[明文密码]]></password>
</server>
</servers>
<mirrors>
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven mirror.</name>
<url>http://maven.aliyun.com/nexus/content/groups/pulic/</url>
</mirror>
</mirrors>
</settings>
说明一点,如果密码中包含特殊字符,则需要用**<![CDATA[]]>**包裹,否则会报错
查看当前生效的全部配置:
mvn help:effective-settings
获取生效的仓库目录命令行:
mvn help:evaluate -Dexpression=settings.localRepository | grep -v ‘[INFO]’
mvn下载文件,
解决下载依赖包需要账号密码,解决Not authorized
mvn -e -U dependency:get -DremoteRepositories=${idInSettingsServer}::::http://10.10.22.27:8081/repository/${NexusRepoName}/ -DgroupId=com.xx.abc -DartifactId=senlin -Dversion=4.7.7_p1 -Dpackaging=tar
下载的是http://10.160.22.127:8081/repository/${NexusRepoName}/com/xx/abc/senlin/4.7.7_p1/senlin-4.7.7_p1.tar
只需要${idInSettingsServer}是settings.xml中正确的账号对应的serverID即可,没有正确的账号时只需新加一个server段即可
mvn上传文件 mvn命令行上传
mvn deploy:deploy-file -DgroupId=groupid -DartifactId=senlin -Dversion=4.7.7_p1 -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id对应正常的serverid即可]