maven项目的运行方式,maven私服的上传下载
一、maven项目父子工程的运行方式
1.通过父项目的plugin下集成的tomacat run启动

2.通过自身项目的tomcat plugin启动,但前提是所依赖的项目必须全部都install(将项目打成jar包安装到本地maven仓库)(挨个install 或者直接install父工程)

3.通过配置idea的tomcat ……



二、maven私服的搭建与上传下载
2.1搭建 安装Nexus软件 默认端口8081





默认账号密码:admin admin123
仓库类型:
hosted:私服自身库
3rd 自己上传的第三方jar包
Snapshots 测试版
Release 正式版
proxy: 代理的三方远程中央仓库
virtual: maven1的(了解即可)

group

2.2本地pom集成上传maven私库
2.2.1 在pom文件中添加私服仓库的位置信息
<distributionManagement>
<repository>
<id>releases</id>
<url>http://192.168.3.17/nexus/content/repositories/releases</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://192.168.3.17/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
2.2.2 在setting.xml中添加私服的账号信息
<!-- 用于登录发布正式版本 -->
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<!-- 用于登录发布快照版本 -->
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
2.2.3注意id要对上
2.2.4执行上传
在项目生命周期的最后一个deploy执行后,上传就完成了(生命周期最后一站说明前面的clean啊insertt啊 都已经执行过了)


2.3本地pom自动下载私服上的jar到本地库
2.3.1 在setting.xml中添加profiles指向私服仓库地址
<profile>
<!-- profile的id -->
<id>dev</id>
<repositories>
<repository>
<!-- 仓库id。repositorys可配置多个仓库,保证id不重复 -->
<id>central</id>
<name>central</name>
<!-- 仓库地址 -->
<url>http://192.168.3.17/nexus/content/groups/public/</url>
<!-- 是否下载releases构件 -->
<releases>
<enabled>true</enabled>
</releases>
<!-- 是否下载snapshots构件 -->
<snapshots>
enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<!-- 插件仓库 maven的运行依赖插件 也需要从私服下载插件-->
<pluginRepositories>
<pluginRepository>
<!-- id不允许重复 否则后边会覆盖前边 -->
<id>public</id>
<name>Public Repository</name>
<url>http://192.168.3.17/nexus/content/groups/public/</url>
</pluginRepository>
</pluginRepositories>
</profile>
2.3.2 激活配置
<activeProfiles>
<!-- profile的id -->
<activeProfile>dev</activeProfile>
</activeProfiles>
完成这时候运行项目的时候就会自动下载本地仓库缺失的jar

三、上传三放jar包到本地仓库
3.1进入jar包所在目录运行命令:
mvn install:install-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dfile=fastjson-1.1.37.jar -Dpackaging=jar
或者
mvn install:install-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dpackaging=jar -Dfile=(第三方jar包全路径名,例如:D:\fastjson-1.1.37.jar)
3.2上传三方jar到私服
3.2.1setting.xml添加:
<server>
<id>thirdparty</id>
<username>admin</username>
<password>admin123</password>
</server>
3.2.2打开cmd,进入jar包所在目录
3.2.3运行命令:
mvn deploy:deploy-file -DgroupId=com.alibaba -DartifactId=fastjson -Dversion=1.1.37 -Dpackaging=jar -Dfile=fastjson-1.1.37.jar -Durl=http://localhost:8081/nexus/content/repositories/thirdparty/ -DrepositoryId=thirdparty
maven项目的运行方式,maven私服的上传下载的更多相关文章
- Java开发学习(三十四)----Maven私服(二)本地仓库访问私服配置与私服资源上传下载
一.本地仓库访问私服配置 我们通过IDEA将开发的模块上传到私服,中间是要经过本地Maven的 本地Maven需要知道私服的访问地址以及私服访问的用户名和密码 私服中的仓库很多,Maven最终要把资源 ...
- Maven入门:使用Nexus搭建Maven私服及上传下载jar包
一. 私服搭建及配置 1 . 私服简介 私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件.有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓 ...
- Maven(二)-- 搭建私服,上传jar
一.在setting中配置 私服的镜像,在mirrors标签中加上: <!--第一步 配置私服的镜像--> <mirror> <!--此处配置所有的构建均从私有仓库中下载 ...
- 【IDEA】本地新建Maven项目+配置Git和GitHub+代码上传和拉取到GitHub+其他IDEA和GitHub实战
一.本地新建Maven项目并启动成功 1. 按照IDEA提供的模板,构建一个maven webapp的模板项目. 一路Next,到最后的finish.如下图. 2. 新建Tomcat,启动刚建立的项目 ...
- Maven项目无法引入 Maven Dependencies Libraries 问题
昨天在check下来maven项目之后一些配置好了,就是下载不是maven 依赖库,后面再网上找到如下解决方案. 在.classpath文件中加入如下代码就好了. <classpathentry ...
- Maven配置jar(war)包自动打包上传Maven服务器的配置
Maven配置jar(war)包自动打包上传Maven服务器的配置 创建jar(war)包工程 创建一个maven工程 在工程中穿件一个测试类 配置pom.xml <distributionMa ...
- java中文上传下载功能实现(自己测试项目)
1.新建maven项目打war包 2.搭建springMVC框架 web.xml文件配置 <?xml version="1.0" encoding="UTF-8&q ...
- 使用Eclipse上传/下载Git项目
使用Eclipse上传/下载Git项目 前提: Eclipse已安装EGit插件 已拥有GitLab / GitHub / 其它Git托管服务账号 SSH方式 配置 配置Git信息 配置用户信息 Ec ...
- Java Web 项目的文件/文件夹上传下载
需求: 支持大文件批量上传(20G)和下载,同时需要保证上传期间用户电脑不出现卡死等体验: 内网百兆网络上传速度为12MB/S 服务器内存占用低 支持文件夹上传,文件夹中的文件数量达到1万个以上,且包 ...
随机推荐
- Azure Web App (二)使用部署槽切换部署环境
一,引言 前天我们将到使用Azure的 Pass 服务 “Web App” 去部署我们的.NET Core Web项目,也同时有介绍到如何在VS中配置登陆中国区的Azure账号,今天接着讲,我们部署完 ...
- 第十章:Android消息机制
Android的消息机制主要是指Handler的云心机制,Handler的运行需要底层的MessageQueue和Looper支持. Handler是Android消息机制的上层接口. 通过Handl ...
- OSCP Learning Notes - Exploit(8)
Tools: 3. hydra Hydra v8.9.1 (c) 2019 by van Hauser/THC - Please do not use in military or secret se ...
- xenomai内核解析--双核系统调用(三)--如何为xenomai添加一个系统调用
版权声明:本文为本文为博主原创文章,转载请注明出处.如有错误,欢迎指正. @ 目录 一.添加系统调用 二.Cobalt库添加接口 三.应用使用 一.添加系统调用 下面给xenomai添加一个系统调用g ...
- 你闺女也能看懂的插画版 Kubernetes 指南
Matt Butcher是Deis的平台架构师,热爱哲学,咖啡和精雕细琢的代码.有一天女儿走进书房问他什么是Kubernetes,于是就有了这本插画版的Kubernetes指南,讲述了勇敢的Phipp ...
- pta习题:退休日期推算
6-3 退休日期推算 (10分) 关于日期的结构定义如下: struct DateG{ int yy,mm,dd;}; 编写两个函数,一个计算自公元1年1月1日到指定的日期共经历了多少天.另一个是 ...
- Codeforces1379-题解
很久以前,申蛤申请了一个cf号叫 wzxakioi 有一天,戌蛤带着申蛤用这个账号打了一场div3,然后它的rating超过了shzr 之后申蛤又用这个号打了三场div2,于是 CF1379C 题意 ...
- ES6标准中的import和export
在ES6前, 前端使用RequireJS或者seaJS实现模块化, requireJS是基于AMD规范的模块化库, 而像seaJS是基于CMD规范的模块化库, 两者都是为了为了推广前端模块化的工具 ...
- 题解 洛谷 P5303 【[GXOI/GZOI2019]逼死强迫症】
可以先去考虑没有\(1 \times 1\)的砖块的情况,对于最后一个位置只有两种情况,一个是竖着用一块砖铺设\(2 \times 1\),另一个为横着用两块砖铺设\(2 \times 2\). 设没 ...
- python dict乱码如何解决
定义字典并直接输出,结果输出结果中文是乱码展示 d={'name':'lily','age':18,'sex':'女','no':1121} print d 输出结果: {'age': 18, 'no ...