maven上传源码到私服

简介: 上传源码项目中采用了分模块的方式构建,直接将maven-source-plugin写到父pom中,尝试了很多次发现源码一直不能上传到私服中,纠结了很长时间才发现原来多模块项目和普通一个项目的配置是有区别的,需要在每个需要上传源码的子模块中都配置maven-source-plugin才可以上传,于是乎有了一下的代码1,非多模块项目 org.

上传源码

项目中采用了分模块的方式构建,直接将maven-source-plugin写到父pom中,尝试了很多次发现源码一直不能上传到私服中,纠结了很长时间才发现原来多模块项目和普通一个项目的配置是有区别的,需要在每个需要上传源码的子模块中都配置maven-source-plugin才可以上传,于是乎有了一下的代码

1,非多模块项目

<plugins>
   <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-source-plugin</artifactId>
      <version>3.0.1</version>
      <configuration>
         <attach>true</attach>
      </configuration>
      <executions>
         <execution>
            <phase>compile</phase>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
      </executions>
  </plugin>
</plugins>

 

2,多模块项目

在父pom中增加

<pluginManagement>
   <plugins>
      <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>3.0.1</version>
          <configuration>
             <attach>true</attach>
          </configuration>
             <executions>
                 <execution>
                     <phase>compile</phase>
                         <goals>
                            <goal>jar</goal>
                         </goals>
                 </execution>
            </executions>
        </plugin>
    </plugins>
</pluginManagement>

子项目中增加

 <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

然后使用:mvn deploy 既可将源码上传到私服中

打包问题

封装过公共组件的同志们都知道,工具组件需要不断的维护升级,还好现在有maven来帮助我们管理各个版本的jar包,但是如何正确的使用maven来让团队使用我们jar呢,这就是我们接下来介绍的。

首先我们开发的版本都是 SNAPSHOT ,但是当被项目组使用的时候需要发布RELEASE版本来使用,这样不至于我们更改的代码影响团队的使用。因此在deploy项目的时候我们可以分为三部来操作

mvn versions:set -DnewVersion=1.0.0.RELEASE
mvn deploy
mvn versions:set -DnewVersion=0.0.1-SNAPSHOT

第一步:我们设置当前项目的版本号为 1.0.0Release,这是maven会自动将多模块中所有模块的版本号都更改为当前我们设置的

第二步:继续使用deploy上传代码

第三步:我们要继续开发自己的功能,所以需要将项目中的版本号更改为SNAPSHOT

上面的1.0.0 和 0.0.1 需要根据项目来定,没有固定的要求

 pom中配置配置Nexus

<distributionManagement>
<snapshotRepository>
<id>snapshots</id>
<name>Nexus Snapshot Repository</name>
<url>http://x.x.x.x:port/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
<repository>
<id>releases</id>
<name>Nexus Release Repository</name>
<url>http://x.x.x.x:port/nexus/content/repositories/releases/</url>
</repository>
</distributionManagement>
开开心心编码,快快乐乐生活。
目录
相关文章
|
2月前
|
Java Maven 编译器
Java编译器注解运行和自动生成代码问题之Maven编译时设置生成的源码的文件夹路径问题如何解决
Java编译器注解运行和自动生成代码问题之Maven编译时设置生成的源码的文件夹路径问题如何解决
|
2月前
|
Java jenkins 持续交付
Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试
【7月更文挑战第1天】Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试。成功后,Jenkins执行部署任务,发布到服务器或云环境。使用Jenkins能提升效率,保证软件质量,加速上线,并需维护其稳定运行。
96 0
|
4月前
|
前端开发 IDE Java
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)
232 0
|
4月前
|
数据采集 前端开发 Java
Java医院绩效考核系统源码maven+Visual Studio Code一体化人力资源saas平台系统源码
医院绩效解决方案包括医院绩效管理(BSC)、综合奖金核算(RBRVS),涵盖从绩效方案的咨询与定制、数据采集、绩效考核及反馈、绩效奖金核算到科到组、分配到员工个人全流程绩效管理;将医院、科室、医护人员利益绑定;全面激活人才活力;兼顾质量和效益、长期与短期利益;助力医院降本增效,持续改善、优化收入、成本结构。
70 0
|
10月前
|
Java Maven
使用 maven 自动将源码打包并发布
使用 maven 自动将源码打包并发布
155 0
|
4月前
|
Java Maven
idea下载不下来maven三方库源码处理
idea下载不下来maven三方库源码处理
162 1
|
4月前
|
Java 数据库连接 数据库
基于SpringBoot+maven+Mybatis+html慢性病报销系统(源码+数据库)
基于SpringBoot+maven+Mybatis+html慢性病报销系统(源码+数据库)
|
4月前
|
SQL druid Java
三步实现maven工程集成logback日志框架(日志按天滚动生成文件)并附源码
三步实现maven工程集成logback日志框架(日志按天滚动生成文件)并附源码
214 0
|
10月前
|
Java Maven
使用 maven 自动将源码打包并发布
使用 maven 自动将源码打包并发布
228 0
|
Java Maven
Maven项目指定编译的java版本和源码编码
Maven项目指定编译的java版本和源码编码
508 0