在<DistributionManagement> ... </DistributionManagement>
and <Repositories> ... <Repositories>章节中,可以有一个
<Repository> ... </Repository>
Run Code Online (Sandbox Code Playgroud)
定义.这两个定义有什么区别?这是一个例子:
<distributionManagement>
<downloadUrl>https://github.com/marytts/marytts/releases</downloadUrl>
<repository>
<id>bintray</id>
<url>https://api.bintray.com/maven/marytts/marytts/marytts</url>
</repository>
<snapshotRepository>
<id>bintray</id>
<url>http://oss.jfrog.org/artifactory/oss-snapshot-local</url>
</snapshotRepository>
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)
和
<repositories>
<repository>
<id>marytts-dependencies</id>
<name>marytts-dependencies</name>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<url>file://${project.local.repository.path}</url>
</repository>
<repository>
<id>central</id>
<name>jcenter</name>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<url>http://jcenter.bintray.com</url>
</repository>
</repositories>
Run Code Online (Sandbox Code Playgroud)
分销管理
分发管理就像听起来一样:它管理工件的分发和在整个构建过程中生成的支持文件.首先从最后一个元素开始:
知识库
当存储库元素在POM中指定Maven可以下载远程工件以供当前项目使用的位置和方式时,distributionManagement指定此项目在部署时将在何处(以及如何)到达远程存储库.如果未定义snapshotRepository,则存储库元素将用于快照分发.
使用存储库布局进行部署
要使用maven布局部署文件,您应该定义分发管理位置:
<project>
...
<distributionManagement>
<repository>
<id>myrepository</id>
<url>file:D:/repository/</url>
</repository>
</distributionManagement>
</project>
Run Code Online (Sandbox Code Playgroud)
然后,您只需执行以下命令即可在文件系统位置复制工件
Maven命令在本地文件系统中部署文件
mvn deploy
Run Code Online (Sandbox Code Playgroud)
网站分发
分发管理不仅仅是分发到存储库,还负责定义如何部署项目的站点和文档.
在pom.xml,配置在distributionManagement 标记内部署站点的位置 .
<distributionManagement>
<site>
<id>mkyongserver</id>
<url>dav:http://127.0.0.1/sites/</url>
</site>
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)
搬迁
项目不是静态的; 它们是生物(或死亡的东西,视情况而定).随着项目的发展,一个常见的事情就是他们被迫搬到更合适的地方.例如,当你的下一个非常成功的开源项目在Apache保护伞下运行时,最好让你的用户单独将项目重命名为org.apache:my-project:1.0.除了指定新地址外,提供解释原因的消息也是一种很好的形式.
库
存储库是符合Maven存储库目录布局的工件集合.为了成为Maven存储库工件,POM文件必须位于结构$ BASE_REPO/groupId/artifactId/version/artifactId-version.pom中.$ BASE_REPO可以是本地(文件结构)或远程(基本URL); 剩下的布局将是相同的.存储库作为收集和存储工件的地方而存在.每当项目依赖于工件时,Maven将首先尝试使用指定工件的本地副本.如果该工件在本地存储库中不存在,则它将尝试从远程存储库下载.POM中的存储库元素指定要搜索的备用存储库.
存储库是Maven社区最强大的功能之一.默认的中央Maven存储库位于 http://repo.maven.apache.org/maven2/上.iBiblio中尚未出现的工件的另一个来源是Codehaus快照存储库.
请记住,您只能在里面添加一个<repository>和一个<snapshotRepository>孩子<distributionManagement>
如何申报代理
只需转到Maven-> conf-> setting.xml文件并添加代理
<proxies>
<proxy>
<id>myproxy</id>
<active>true</active>
<protocol>http</protocol>
<host>global.proxy.mycompany.com</host>
<port>8000</port>
<username></username>
<password></password>
<nonProxyHosts>localhost,127.0.0.1</nonProxyHosts>
</proxy>
</proxies>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5516 次 |
| 最近记录: |