setting.xml配置文件可以设置本地仓库目录、远程仓库地址、JDK版本等等pom.xmlpom:Project Object Mode
Java 工程配置文件,配置工程依赖包。
maven的配置文件settings.xml存在于两个地方:
前者又被叫做全局配置,对操作系统的所有使用者生效;后者被称为用户配置,只对当前操作系统的使用者生效。如果两者都存在,它们的内容将被合并,并且用户范围的settings.xml会覆盖全局的settings.xml。
Maven安装后,用户目录下不会自动生成settings.xml,只有全局配置文件。如果需要创建用户范围的settings.xml,可以将安装路径下的settings复制到目录${user.home}/.m2/。Maven默认的settings.xml是一个包含了注释和例子的模板,可以快速的修改它来达到你的要求。
配置本地仓库地址,Maven从远程仓库或者私有仓库下载的依赖包保存到本地仓库的路径。
/Users/Flygo/.m2/repository
true
false
false
org.codehaus.mojo
myproxy
true
http://…
proxy.somewhere.com
8080
proxyuser
somepassword
*.google.com|ibiblio.org
server001
my_login
my_password
${usr.home}/.ssh/id_dsa
some_passphrase
664
775
planetmirror.com
PlanetMirror Australia
http://downloads.planetmirror.com/pub/maven2
central
test
false
1.7
Windows XP
Windows
x86
5.1.2600
mavenVersion
2.0.3
/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/
/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/
usr/local/winner/jobs/maven-guide
codehausSnapshots
Codehaus Snapshots
false
always
warn
http://snapshots.maven.codehaus.org/maven2
default
env-test
POM代表项目对象模型。它是 Maven 中工作的基本单位,这是一个 XML 文件。它始终保存在该项目基本目录中的 pom.xml 文件。
POM 包含的项目是使用 Maven 来构建的,它用来包含各种配置信息。
POM 也包含了目标和插件。在执行任务或目标时,Maven 会使用当前目录中的 POM。它读取POM得到所需要的配置信息,然后执行目标。
一个Maven项目,在POM中配置坐标,标识项目在仓库的唯一性。
坐标由groupId、artifactId和version三个属性组合成坐标,标识项目的在仓库的唯一性。
把project当作对象看待。
通过maven构建工具可以让对象(项目)和对象(项目)之间产生关系。
创建Maven工程后,最简单的POM配置文件。
4.0.0
com.flygo520
demo
1.0
groupId,artifactId,versiongroupId:artifactId:versionproject,它有三个主要的子节点关键元素说明
| 元素节点 |
节点说明 |
|---|---|
| groupId | 公司名.公司网址倒写。例如:com.flygo520 |
| artifactId | 项目名。例如:demo |
| version | 版本号。例如:1.0 |
4.0.0
com.flygo520
demo
jar
1.0-SNAPSHOT
demo-maven
https://www.flygo520.com
maven pjoect Demo.
jira
http://jira.baidu.com/banseon
Demo
[email protected]
[email protected]
[email protected]
https://www.flygo520.com
HELLO WORLD
FlyGo
[email protected]
Project Manager
Architect
demo
https://www.flygo520.com
No
-5
Apache 2
http://www.baidu.com/banseon/LICENSE-2.0.txt
repo
A business-friendly OSS license
scm:svn:http://svn.sundaytech.cn/trunk
scm:svn:http://svn.sundaytech.cn/trunk
http://svn.http://svn.sundaytech.cn/trunk/url>
demo
https://www.flygo520.com
......
......
Windows XP
Windows
x86
5.1.2600
mavenVersion
2.0.3
/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/
/usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/
......
......
......
......
......
......
banseon-repository-proxy
banseon-repository-proxy
http://192.168.1.169:9999/repository/
default
......
org.apache.maven
maven-artifact
3.8.1
jar
test
spring-core
org.springframework
true
......
banseon-maven2
banseon maven2
file://${basedir}/target/deploy
banseon-maven2
Banseon-maven2 Snapshot Repository
scp://svn.sundaytech.cn/flygo:/usr/local/maven-snapshot
banseon-site
business api website
scp://svn.sundaytech.cn/flygo:/var/www/localhost/banseon-web