maven 打包上传到私服

来源:互联网 发布:哪一个翻译软件最好 编辑:程序博客网 时间:2024/06/10 06:18

搭建好私服后,需要在~/.m2/settings.xml中配置私服仓库用户名密码,在工程的pom.xml中配置仓库地址


~/.m2/settings.xml

<servers>  <server>          <id>nexus-snapshot</id>          <username>admin</username>          <password>admin_password</password>      </server>      <server>          <id>nexus-release</id>          <username>admin</username>          <password>admin_password</password>      </server>  </servers>

工程pom.xml中

<distributionManagement>        <snapshotRepository>          <id>nexus-snapshot</id>          <name>repo-snapshot</name>          <url>http://localhost:8081/repository/maven-snapshots/</url>        </snapshotRepository>        <repository>          <id>nexus-release</id>          <name>repo-release</name>          <url>http://localhost:8081/repository/maven-releases/</url>        </repository>  </distributionManagement>

注意distributionManagement标签中的id要与servers中的id对应

一般来说,我们上传都可以省略Test这一步,所以可以使用这个命令

mvn deploy -DskipTests

-DskipTest会跳过test代码运行

也可以

mvn deploy -Dmaven.test.skip=true

-Dmaven.test.skip=true,既跳过测试代码编译,也跳过测试代码执行。而-DskipTests只跳过测试代码执行。

执行上述命令后,如果遇到这个异常

... was cached in the local repository, resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced

说明,插件或者依赖包由于更新策略而没有更新下来,可以设置设置更新策略为总是更新。

 <updatePolicy>always</updatePolicy>

具体如下

<profile>         <id>nexus</id>        <repositories>            <repository>                <id>central</id>                <url>http://repo.maven.apache.org/maven2</url>                <releases>                    <enabled>true</enabled>                    <updatePolicy>always</updatePolicy>                </releases>                <snapshots>                    <enabled>true</enabled>                    <updatePolicy>always</updatePolicy>                </snapshots>            </repository>        </repositories>        <pluginRepositories>            <pluginRepository>                <id>central</id>                <url>http://repo.maven.apache.org/maven2</url>                <releases>                    <enabled>true</enabled>                    <updatePolicy>always</updatePolicy>                </releases>                <snapshots>                    <enabled>true</enabled>                    <updatePolicy>always</updatePolicy>                </snapshots>             </pluginRepository>        </pluginRepositories>    </profile>
0 0