mvn本地服务nexus3的搭建

下载

安装

  • 以管理员身份运行cmd 并切换到bin目录下面执行下面的命令安装服务
nexus.exe /install <optional-service-name>  //安装nexus服务
  • 启动服务
nexus.exe /start <optional-service-name>   //启动nexus服务

nexus.exe /stop <optional-service-name>    //停止nexus服务

其它

  • 如果要更改配置信息到etc\nexus-default.properties文件中更改
application-host : Nexus服务监听的主机 ;

application-port: Nexus服务监听的端口;

nexus-context-path : Nexus服务的上下文路径;
  • 默认的用户名为admin 密码为admin123

配置本地代理

  • 我们要在pom.xml文件中配置,因为pom文件的依赖性主要还是maven的依赖性所以我们只要在最顶层配置即可
<distributionManagement>
<repository>
<id>nexus-releases</id>
<name>Nexus Release Repository</name>
<url>http://192.168.15.13:6689/repository/maven-releases/</url>
</repository> <snapshotRepository>
<id>nexus-snapshots</id>
<name>Nexus Snapshot Repository</name>
<url>http://192.168.15.13:6689/repository/maven-snapshots/</url>
</snapshotRepository> </distributionManagement> <repositories>
<repository>
<id>nexus</id>
<name>Nexus Repository</name>
<url>http://192.168.15.13:6689/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
<repository>
<id>3rdParty</id>
<name>3rdParty</name>
<url>http://192.168.15.13:6689/repository/3rdParty/</url>
</repository>
<repository>
<id>aliyun-repos</id>
<name>Aliyun Repository</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository> <repository>
<id>sonatype-repos</id>
<name>Sonatype Repository</name>
<url>https://oss.sonatype.org/content/groups/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>sonatype-repos-s</id>
<name>Sonatype Repository</name>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories> <pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>Nexus Plugin Repository</name>
<url>http://192.168.15.13:6689/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository> <pluginRepository>
<id>aliyun-repos</id>
<name>Aliyun Repository</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>

mvn发布到第三方库

  • 我们执行发布命令
    mvn clean deploy

错误类别及处理

  • 错误400 就是仓库的权限问题如下图设置为allow redeploy
  • 错误401 就是setting.xml用户名密码或者仓库坐标不匹配,一一对应上即可
  • 错误405 就是pom文件中的代理配置和发布配置路径不正确 参考上面的pom文件内容
  • No goals have been specified for this build
      <defaultGoal>compile</defaultGoal>
    pom.xml文件<build>标签后面加上<defaultGoal>compile</defaultGoal>即可

mvn新建第三方库并上传本地jar文件

新建第三方仓库

  • 登录nexus点击仓库,右上角新增加或者是加号
  • 命令并设置权限
  • 在本地Setting.xml文件中配置server同上
  • 在本地jar文件夹执行下面的命令
mvn deploy:deploy-file -DgroupId=xxx.xxx -DartifactId=xxx -Dversion=0.0.2 -Dpackaging=jar -Dfile=D:\xxx.jar -Durl=http://xxx.xxx.xxx.xxx:8081/repository/3rdParty/ -DrepositoryId=3rdParty
其中-DgroupId 为上传的jar的groupId
-DartifactId 为上传的jar的artifactId
-Dversion 为上传的jar的需要被依赖的时候的版本号
然后是-Dpackaging为jar,-Dfile为jar包路径
-Durl 为要上传的路径,可以通过以下方式获取到
mvn deploy:deploy-file -DgroupId=edu.ucar -DartifactId=grib -Dversion=4.3.19 -Dpackaging=jar -Dfile=F:\my3djar\grib-4.3.19.jar -Durl=http://192.168.15.13:6689/repository/3rdParty/ -DrepositoryId=3rdParty

  • 最后在pom文件是配置这个第三库的代理

mvn依赖报红线不影响正常使用解决办法

本地仓库有这个jar文件,但是还是报错,操作如下

  • 把pom.xml文件是报错的依赖删除,更新maven并clean一下
  • 再把报错的依赖还原,更新maven (俗称手动更新依赖)

maven的相关操作及常见问题的更多相关文章

  1. C# 操作 Excel 常见问题收集和整理

    C# 操作 Excel 常见问题收集和整理(定期更新,欢迎交流) 经常会有项目需要把表格导出为 Excel 文件,或者是导入一份 Excel 来操作,那么如何在 C# 中操作 Excel 文件成了一个 ...

  2. MAC 相关操作解析

    MAC 相关操作解析 OS 显示桌面 f11 F1~F12 fn + F1~F12 撤销重做 command + z command + shift + z 图片预览 选择图片 空格 上下左右 svn ...

  3. 利用JAVA API远程进行HDFS的相关操作

    学习HDFS有一段时间了,现在把自己总结的HDFS的相关操作代码展示给大家. 主要有HDFS的增删改查,文件的追加,windows本地文件的上传,hdfs文件的下载,文件重命名,创建目录,文件是否存在 ...

  4. Phoenix简介概述,Phoenix的Java API 相关操作优秀案例

    Phoenix简介概述,Phoenix的Java API 相关操作优秀案例 一.Phoenix概述简介 二.Phoenix实例一:Java API操作 2.1 phoenix.properties 2 ...

  5. 从零自学Hadoop(20):HBase数据模型相关操作上

    阅读目录 序 介绍 命名空间 表 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  6. 从零自学Hadoop(21):HBase数据模型相关操作下

    阅读目录 序 变量 数据模型操作 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  7. 理解CSV文件以及ABAP中的相关操作

    在很多ABAP开发中,我们使用CSV文件,有时候,关于CSV文件本身的一些问题使人迷惑.它仅仅是一种被逗号分割的文本文档吗? 让我们先来看看接下来可能要处理的几个相关组件的词汇的语义. Separat ...

  8. Liunx下的有关于tomcat的相关操作 && Liunx 常用指令

    先记录以下liunx下的有关于tomcat的相关操作 查看tomcat进程: ps-ef|grep java (回车) 停止tomcat进程: kill -9 PID (进程号如77447) (回车) ...

  9. pip的相关操作

    >Python中的pip是什么?能够做些什么? pip是Python中的一个进行包管理的东西,能够下载包.安装包.卸载包......一些列操作 >怎么查看pip的相关信息 在控制台输入: ...

随机推荐

  1. Anaconda、TensorFlow安装和Pycharm配置详细教程,亲测有效!

    目录 1.Anaconda下载与安装 2.Anaconda安装成功与否测试 3.安装python 4.检查TensorFlow环境添加成功与否 5.TensorFlow安装 6.测试TensorFlo ...

  2. css禁止选中文字

    很简单: -moz-user-select:none;/*火狐*/ -webkit-user-select:none;/*webkit浏览器*/ -ms-user-select:none;/*IE10 ...

  3. Eureka实战-1【Eureka Server在线扩容】

    1.准备工作 PS:为了偷懒,每个pom文件都要依赖的公共依赖配置放在下面: <parent> <groupId>org.springframework.boot</gr ...

  4. myql忽略大小写问题解决

    linux系统下启动mysql默认是区分大小写的,如果刚好项目中使用的表名与数据库中表名大小写有冲突,此时就需要忽略mysql表名大小写了. 解决方式一: 1.关闭数据库 mysqladmin -ur ...

  5. 【ASP.NET基础--MVC】MVC视图基础语法学习

    初步接触.net MVC的视图语法,很多东西都不太熟悉,感觉跟之前的aspx以及html都有一些区别,最近看别人的代码,一边看一边研究,现把学到的东西在这里记录一下,以便日后翻阅. 第一部分:基础知识 ...

  6. C语言入门-字符串

    还是要继续学习,每天给自己打气. 字符数组 char word[] = {'H','e','l','l','o'}; 这不是c语言的字符串,不能用字符串的方式做计算 一.字符串 char word[] ...

  7. Kotlin基本语法和使用技巧

    基本语法 val value: String? = "HelloWorld" val name: String = getName() ?: return //如果是null就re ...

  8. java架构之路-(面试篇)JVM虚拟机面试大全

    下文连接比较多啊,都是我过整理的博客,很多答案都在博客里有详细说明,理解记忆是最扎实的记忆.而且我的答案不一定是最准确的,但是我的答案不会让你失望,而且几乎每个答案都是问题的扩展答案. 1.JVM内存 ...

  9. Thinkphp5.0第五篇

    原样输出 使用literal标签防止模板标签被解析 例如 {literal} {$name}<br/> {/literal} 模板单行注释 {//注释内容} 多行注释 {/*注释内容*/} ...

  10. Java 学习笔记之 父子类Synchronized

    父子类Synchronized: 我们通过一个例子来验证下,父类和子类的Synchronized方法被同时调用,是否是同步的. public class FatherClass { synchroni ...