`

Maven最佳实践-distributionManagement

 
阅读更多
分发构件至远程仓库
mvn install 会将项目生成的构件安装到本地Maven仓库,mvn deploy 用来将项目生成的构件分发到远程Maven仓库。本地Maven仓库的构件只能供当前用户使用,在分发到远程Maven仓库之后,所有能访问该仓库的用户都能使用你的构件。
我们需要配置POM的distributionManagement来指定Maven分发构件的位置,如下:

<settings>    
  ...    
  <servers>    
    <server>    
      <id>nexus-releases</id>    
      <username>admin</username>    
      <password>admin123</password>    
    </server>    
    <server>    
      <id>nexus-snapshots</id>    
      <username>admin</username>    
      <password>admin123</password>    
    </server>      
  </servers>    
  ...    
</settings>


需要注意的是,settings.xml中server元素下id的值必须与POM中repository或snapshotRepository下id的值完全一致。将认证信息放到settings下而非POM中,是因为POM往往是它人可见的,而settings.xml是本地的。

小结
本文介绍了Maven仓库,它是什么?本地仓库,远程仓库,中央仓库具体是指什么?并介绍了如何在POM中配置项目层次的仓库,在settings中配置用户层次的仓库,以及mirror。本文还介绍了如何安装构件到本地仓库,如何分发构件至仓库。


转载于:http://tianya23.blog.51cto.com/1081650/292205/


Maven的pom.xml文件结构之基本配置packaging和多模块聚合结构
1. packaging

packaging给出了项目的打包类型,即作为项目的发布形式,其可能的类型。在Maven 3中,其可用的打包类型如下:

jar(默认类型)、war、ejb、ear、rar、par、pom、maven-plugin、2.multi-modules

Maven 3支持Maven项目的多模块(multi-modules)结构。这样的Maven项目也被称为聚合项目,通常由一个父模块和若干个子模块构成。

其中,父模块必须以pom打包类型,同时以<modules>给出所有的子模块。父模块的POM示例如下:
...  
<packaging>pom</packaging>  
  
<modules>  
  <module>my-frontend-project</module>  
  <module>my-service-project</module>  
  <module>my-backend-project</module>  
</modules>  
...  

其中的每个module,都是另外一个Maven项目
http://blog.csdn.net/taiyangdao/article/details/52357132
分享到:
评论

相关推荐

    maven 安装及配置讲解.docx

    4. **鼓励更好的开发实践**:通过内置的最佳实践指南来规范项目结构和依赖管理。 #### 二、Maven 安装步骤 ##### 2.1 下载 Maven Maven 官方网站提供了最新版本的下载链接。以 Maven 3.9.1 版本为例,可直接访问 ...

    apache-maven

    - 提供详细的教程,帮助初学者逐步了解 Maven 的工作原理和最佳实践。 - **POM 参考:** - 详细介绍 Maven 的核心概念——项目对象模型(Project Object Model),包括元素的定义、作用和示例。 - **设置参考:** ...

    maven 自动发布更新本地和远程仓库

    10. **最佳实践**: - 使用SNAPSHOT版本进行开发,便于频繁更新。 - 发布正式版本时,确保所有测试都已通过,并且版本号遵循Maven的版本命名规则。 - 避免在公共远程仓库中存储敏感信息。 总结来说,Maven的自动...

    【maven】Nexus使用

    7. **最佳实践** - **分离开发、测试和生产环境的仓库**:避免测试或开发构件污染生产环境。 - **定期同步远程仓库**:保持本地代理仓库的更新,减少网络延迟。 - **使用集团仓库**:便于统一管理多个仓库的访问...

    maven项目在实践中的构建管理之路的方法

    在实际操作中,还需要遵循一些最佳实践: 1. **版本控制**:每个项目的版本号应遵循语义化版本管理(Semantic Versioning),如`1.0.0.RELEASE`,这样可以明确表示功能的增减和破坏性的变更。 2. **模块化**:大...

    使用maven私服nexus

    **最佳实践:** 1. 分离开发和生产环境的仓库,开发用快照,生产用稳定版本。 2. 定期清理Nexus中的过期或无用构件,保持仓库整洁。 3. 使用Nexus的搜索功能,快速定位和管理依赖。 4. 结合CI/CD工具(如Jenkins)...

    springboot~nexus项目打包要注意的地方示例代码详解

    在Spring Boot项目中,打包是发布和部署应用程序的关键步骤。Nexus作为一个企业级的Maven仓库管理器,常用于存储、...在整个过程中,注意版本控制、依赖管理和安全性的最佳实践,能够有效地提升项目的质量和可维护性。

Global site tag (gtag.js) - Google Analytics