mavensettings配置本地仓库(maven配置本地库)
本篇文章给大家谈谈mavensettings配置本地仓库,以及maven配置本地库对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、maven本地仓库的配置以及如何修改默认.m2仓库
- 2、maven settings.xml proxy怎么配置
- 3、maven setting中怎么配置其它仓库
- 4、如何设置maven 的settings位置
- 5、maven如何生成离线资源库
maven本地仓库的配置以及如何修改默认.m2仓库
找到 maven 安装目录下的 conf 文件夹,在这个文件袭孙团夹中找到配置文拍橘件 settings.xml 。
在 settings 结点下 有个 localRepository 结点,去掉其注释,修改 localRepository 的值为想要的路径凯念即可。例如:
localRepositoryD:/repo/.m2/localRepository
maven settings.xml proxy怎么配置
有时候网络不能直接访问外网, 需要设置代理
设置方式如下:
一、检测本地网络是否不能直接访问Maven的远程中央仓库,命令为ping repo1.maven.org
二、要检查代理服务器是否畅通,
比如现在有一个IP地址为192.168.10.117,端口为3267的代理服务,我们需要先运行telnet 192.168.10.117 3267来检查该地址的该端口是否畅通,
如果得道出错信息需要先获取正确的代理服务器信息,
如果telnet连接正确,则输入ctrl+],然后q,回车,退出即可。
三、检查完毕谨冲磨之后,在安祥斗装目录中编辑~/.m2/settings.xml文件,
代码如下:
添加代理配置如下:
settings
...
proxies
proxy
idmy-proxy/id
activetrue/active
protocolhttp/protocol
host192.168.10.117/host
port3267/port
!--
usernameshihuan/username
password123456/password
nonProxyHostsrepository.mycom.com|*.google.com/nonProxyHosts
判吵 --
/proxy
/proxies
...
/settings
这段配置十分简单,proxies下可以有多个proxy元素,如果你声明了多个proxy元素,则默认情况下第一个被激活的proxy会生效。
这里声明了一个id为my-proxy的代理,active的值为true表示激活该代理,protocol表示使用的代理协议,这里是http。当然,最重要的是指定正确的主机名(host元素)和端口(port元素)。
上述XML配置中我注释掉了username、password、nonProxyHost几个元素,当你的代理服务需要认证时,就需要配置username和password。
nonProxyHost元素用来指定哪些主机名不需要代理,可以使用 | 符号来分隔多个主机名。
此外,该配置也支持通配符,如*.google.com表示所有以google.com结尾的域名访问都不要通过代理。
[img]maven setting中怎么配置其它仓库
?xml version="1.0" encoding="UTF-8"?
settings xmlns="" xmlns:xsi=""
xsi:schemaLocation=" "
!--本地仓库首蔽。该值表示构建系统本地仓库的路径。其默认值为~/.m2/repository。 --
localRepositoryusr/local/maven/localRepository
!--
Maven是否需要和用户交互以获得输入。如果Maven需要和用户交互以获得输入,则设置成true,反之则应为false。默认为true。
--
interactiveModetrue/interactiveMode
!--
Maven是否需要使用plugin-registry.xml文件来管理插件版本。如果需要让Maven使用文件~/.m2/plugin-registry.xml来管理插件版本,则设为true。默认为false。
--
usePluginRegistryfalse/usePluginRegistry
!--
表示Maven是否需要在离线模式下运行。如果构建系统需要在离线模式下运行,则为true,默认为false。当由于网络设置原因或者安全因素,构建服务器不能连接远程仓库的时候,该配置就十分有用。
--
offlinefalse/offline
!--
当插件的组织Id(groupId)没有显式提供时,供搜寻插件组织Id(groupId)的列表。该元素包含一个pluginGroup元素列表,每个子元素包含了一个组织Id(groupId)。当我们使用某个插件,并且没有在命令行为其提供组织Id(groupId)的时候,Maven就会使用该列表者旅州。默认情况下该列表包含了org.apache.maven.plugins。
--
pluginGroups
!--plugin的组织Id(groupId) --
pluginGrouporg.codehaus.mojo/pluginGroup
/pluginGroups
!--
用来配置不同的代理,多代理profiles 可以应对笔记本或移动设备的工作环境:通过简单的设置profile
id就可以很容易的更换整个代镇庆理配置。
--
proxies
!--代理元素包含配置代理时需要的信息--
proxy
!--代理的唯一定义符,用来区分不同的代理元素。--
idmyproxy/id
!--该代理是否是激活的那个。true则激活代理。当我们声明了一组代理,而某个时候只需要激活一个代理的时候,该元素就可以派上用处。 --
activetrue/active
!--代理的协议。 协议://主机名:端口,分隔成离散的元素以方便配置。--
protocolhttp/protocol
!--代理的主机名。协议://主机名:端口,分隔成离散的元素以方便配置。 --
hostproxy.somewhere.com/host
!--代理的端口。协议://主机名:端口,分隔成离散的元素以方便配置。 --
port8080/port
!--代理的用户名,用户名和密码表示代理服务器认证的登录名和密码。 --
usernameproxyuser/username
!--代理的密码,用户名和密码表示代理服务器认证的登录名和密码。 --
passwordsomepassword/password
!--不该被代理的主机名列表。该列表的分隔符由代理服务器指定;例子中使用了竖线分隔符,使用逗号分隔也很常见。--
nonProxyHosts*.google.com|ibiblio.org/nonProxyHosts
/proxy
/proxies
!--
配置服务端的一些设置。一些设置如安全证书不应该和pom.xml一起分发。这种类型的信息应该存在于构建服务器上的settings.xml文件中。
--
servers
!--服务器元素包含配置服务器时需要的信息 --
server
!--
这是server的id(注意不是用户登陆的id),该id与distributionManagement中repository元素的id相匹配。
--
idserver001/id
!--鉴权用户名。鉴权用户名和鉴权密码表示服务器认证所需要的登录名和密码。 --
usernamemy_login/username
!--鉴权密码 。鉴权用户名和鉴权密码表示服务器认证所需要的登录名和密码。 --
passwordmy_password/password
!--
鉴权时使用的私钥位置。和前两个元素类似,私钥位置和私钥密码指定了一个私钥的路径(默认是/home/hudson/.ssh/id_dsa)以及如果需要的话,一个密语。将来passphrase和password元素可能会被提取到外部,但目前它们必须在settings.xml文件以纯文本的形式声明。
--
privateKey${usr.home}/.ssh/id_dsa/privateKey
!--鉴权时使用的私钥密码。--
passphrasesome_passphrase/passphrase
!--
文件被创建时的权限。如果在部署的时候会创建一个仓库文件或者目录,这时候就可以使用权限(permission)。这两个元素合法的值是一个三位数字,其对应了unix文件系统的权限,如664,或者775。
--
filePermissions664/filePermissions
!--目录被创建时的权限。 --
directoryPermissions775/directoryPermissions
!--传输层额外的配置项 --
configuration/configuration
/server
/servers
!--为仓库列表配置的下载镜像列表。 --
mirrors
!--给定仓库的下载镜像。 --
mirror
!--该镜像的唯一标识符。id用来区分不同的mirror元素。 --
idplanetmirror.com/id
!--镜像名称 --
namePlanetMirror Australia/name
!--该镜像的URL。构建系统会优先考虑使用该URL,而非使用默认的服务器URL。 --
url;/url
!--
被镜像的服务器的id。例如,如果我们要设置了一个Maven中央仓库()的镜像,就需要将该元素设置成central。这必须和中央仓库的id
central完全一致。
--
mirrorOfcentral/mirrorOf
/mirror
/mirrors
!--
根据环境参数来调整构建配置的列表。settings.xml中的profile元素是pom.xml中profile元素的裁剪版本。它包含了
id,activation, repositories, pluginRepositories和
properties元素。这里的profile
元素只包含这五个子元素是因为这里只关心构建系统这个整体(这正是settings.xml文件的角色定位),而非单独的项目对象模型设置。如果一个
settings中的profile被激活,它的值会覆盖任何其它定义在POM中或者profile.xml中的带有相同id的 profile。
--
profiles
!--根据环境参数来调整的构件的配置--
profile
!--该配置的唯一标识符。 --
idtest/id
!--
自动触发profile的条件逻辑。Activation是profile的开启钥匙。如POM中的profile一样,profile的力量来自于它能够在某些特定的环境中自动使用某些特定的值;这些环境通过activation元素指定。activation元素并不是激活profile的唯一方式。
settings.xml文件中的activeProfile元素可以包含profile的id。profile也可以通过在命令行,使用-P标记和逗号分隔的列表来显式的激活(如,-P
test)。
--
activation
!--profile默认是否激活的标识--
activeByDefaultfalse/activeByDefault
!--
当匹配的jdk被检测到,profile被激活。例如,1.4激活JDK1.4,1.4.0_2,而!1.4激活所有版本不是以1.4开头的JDK。
--
jdk1.5/jdk
!--当匹配的操作系统属性被检测到,profile被激活。os元素可以定义一些操作系统相关的属性。--
os
!--激活profile的操作系统的名字 --
nameWindows XP/name
!--激活profile的操作系统所属家族(如 'windows') --
familyWindows/family
!--激活profile的操作系统体系结构 --
archx86/arch
!--激活profile的操作系统版本--
version5.1.2600/version
/os
!--
如果Maven检测到某一个属性(其值可以在POM中通过${名称}引用),其拥有对应的名称和值,Profile就会被激活。如果值字段是空的,那么存在属性名称字段就会激活profile,否则按区分大小写方式匹配属性值字段
--
property
!--激活profile的属性的名称--
namemavenVersion/name
!--激活profile的属性的值 --
value2.0.3/value
/property
!--
提供一个文件名,通过检测该文件的存在或不存在来激活profile。missing检查文件是否存在,如果不存在则激活profile。另一方面,exists则会检查文件是否存在,如果存在则激活profile。
--
file
!--如果指定的文件存在,则激活profile。 --
exists/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace//exists
!--如果指定的文件不存在,则激活profile。--
missing/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace//missing
/file
/activation
!--
对应profile的扩展属性列表。Maven属性和Ant中的属性一样,可以用来存放一些值。这些值可以在POM中的任何地方使用标记${X}来使用,这里X是指属性的名称。属性有五种不同的形式,并且都能在settings.xml文件中访问。
1. env.X:
在一个变量前加上"env."的前缀,会返回一个shell环境变量。例如,"env.PATH"指代了$path环境变量(在Windows上是%PATH%)。
2. project.x:指代了POM中对应的元素值。 3. settings.x: 指代了settings.xml中对应元素的值。
4. Java System Properties:
所有可通过java.lang.System.getProperties()访问的属性都能在POM中使用该形式访问,
如/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre。 5. x:
在properties/元素中,或者外部文件中设置,以${someVar}的形式使用。
--
properties
user.install/ebs1/build-machine/usr/local/hudson/hudson-home/jobs/maven-guide-/user.install
/properties
!--远程仓库列表,它是Maven用来填充构建系统本地仓库所使用的一组远程项目。 --
repositories
!--包含需要连接到远程仓库的信息 --
repository
!--远程仓库唯一标识--
idcodehausSnapshots/id
!--远程仓库名称 --
nameCodehaus Snapshots/name
!--如何处理远程仓库里发布版本的下载--
releases
!--true或者false表示该仓库是否为下载某种类型构件(发布版,快照版)开启。 --
enabledfalse/enabled
!--
该元素指定更新发生的频率。Maven会比较本地POM和远程POM的时间戳。这里的选项是:always(一直),daily(默认,每日),interval:X(这里X是以分钟为单位的时间间隔),或者never(从不)。
--
updatePolicyalways/updatePolicy
!--当Maven验证构件校验文件失败时该怎么做-ignore(忽略),fail(失败),或者warn(警告)。--
checksumPolicywarn/checksumPolicy
/releases
如何设置maven 的settings位置
当Maven运行过程中的各种配置,例如pom.xml,不想绑定到一个固定的project或者要分配给用户时,我们使用settings.xml中的settings元素来确定这些配置。这包含了本地仓库位置,远程仓库服务器以及认证信息等。
settings.xml存在于两个地方:
1.安装的地方:$M2_HOME/conf/settings.xml
2.用户的目录:${user.home}/.m2/settings.xml
前者又被叫做全局配置,后者被称为用户配置。如果两者都存在,它们的内容将被合并,并且用户范围的settings.xml优先。
如果你偶尔需要创建用户范围的settings,你可以简单的copy Maven安装路径下的settings到目录${user.home}/.m2。Maven默认的settings.xml是一个包含了注释和例子的模板,你可以快速的修改它来达到你的要求。
maven如何生成离线资源库
下载maven依赖,复制本地仓库,设置idea。
1、通过下载maven项目,maven插件会自动基敏将maven依赖下载到本地仓帆碧库。2、复制本地仓库先要找到maven的本地仓库,可以通过filesettingsmaven流程查看到maven本地仓库的态锋举位置。3、然后直接复制,粘贴到生产环境下。设置idea打开IDEA的maven设置filesettings搜索maven。4、注意要将maven设置为离线模式,然后将Usersettingsfile配置成上一步拷贝的settings.xml的地址,点击OK。
Maven翻译为专家是Apache下的一个纯Java开发的开源项目。
关于mavensettings配置本地仓库和maven配置本地库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。