目录
Maven私服上传jar实操_java_菜鸟江涛的博客-CSDN博客
前面写过一篇实操记录,主要是上传jar的操作步骤,这里呢觉得还是有必要记录下,如何向自己maven私服上传pom和jar。
1.场景需求
我的需求是这样的:开发组长要求我向公司的maven私服上上传mongodb的启动包和依赖,我就上Maven公有仓库找去了。
https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-mongodb
如果我们用的公有Maven仓库或者配置了阿里云的仓库,一般复制1处的依赖就好了,其他不用管,然后下载完成后就可以愉快的编程了。我一开始也以为只要引入了spring-boot-start-data-mongodb.jar就可以愉快的编程了,但是……,是我太天真,注意看2处,想愉快的编程,还有很多依赖要添加。
好吧,那我就把mongodb-driver.jar和spring-data-mongodb.jar下载,然后按照之前的经验上传,………………
上传完毕之后,心想这回可以用了吧!!!BUT……,仍然还是不行,我于是手动在项目pom.xml里面如下图所示一个一个的把这些依赖都加上了,然后运行,居然可以正常的运行了!!!!FK!!!
我心想,平常我只要引入一个spring-boot-data-starter-mongodb就可以愉快的玩耍了,但是这次咋不行,然后我就不停的找原因。终于让我找到了,一般我们上传到Maven私服的jar,系统会帮我们自动生成一个pom文件,但是这个pom里面啥都没有,如图所示。
还贴心的提示,POM was created by SonaType Nexus!
这样的pom如何能满足我们的需求呢???我们正经的spring-boot-starter-data-mongodb是这样的呀!!
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starters</artifactId>
<version>2.2.6.RELEASE</version>
</parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<version>2.2.6.RELEASE</version>
<name>Spring Boot Data MongoDB Starter</name>
<description>Starter for using MongoDB document-oriented database and Spring Data
MongoDB</description>
<url>https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-data-mongodb</url>
<organization>
<name>Pivotal Software, Inc.</name>
<url>https://spring.io</url>
</organization>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0</url>
</license>
</licenses>
<developers>
<developer>
<name>Pivotal</name>
<email>info@pivotal.io</email>
<organization>Pivotal Software, Inc.</organization>
<organizationUrl>https://www.spring.io</organizationUrl>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/spring-projects/spring-boot.git</connection>
<developerConnection>scm:git:ssh://git@github.com/spring-projects/spring-boot.git</developerConnection>
<url>https://github.com/spring-projects/spring-boot</url>
</scm>
<issueManagement>
<system>Github</system>
<url>https://github.com/spring-projects/spring-boot/issues</url>
</issueManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.2.6.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver</artifactId>
<version>3.11.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>2.2.6.RELEASE</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>mongo-java-driver</artifactId>
<groupId>org.mongodb</groupId>
</exclusion>
<exclusion>
<artifactId>jcl-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</project>
那我们如何能达到效果呢?
2 实操记录
2.1 上传jar的时候一起上传pom
第一种方式就是上传jar的时候,将pom一起上传,推荐使用这种。
看下我们提交的pom有没有内容
至此,我们就可以在项目中只引入一个starter,然后愉快的编程了,不需要再一个一个的引入依赖了!!!
2.2 单独更新pom
如果jar已经存在,那么可以删除系统生成的pom,然后自己上传新的pom,注意填写GROUP,Artifact ,Version等信息。
删除的方式如下:
删除有两种方式,可以通过选中pom或jar,然后鼠标右键点击删除,另一种是到artifact页签上,点击删除按钮。
想要删除的文件删除之后,我们就可以上传新的pom或jar了。
后记:关于这个操作,笔者在网上搜了半天也没满意的答案,所以硬着头皮自己摸索,这里做个记录,供大家参考,如果觉得有用,不要吝啬给个赞!
#标题6