setting.xml
配置文件可以设置本地仓库目录、远程仓库地址、JDK版本等等pom.xml
pom: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
,version
groupId:artifactId:version
project
,它有三个主要的子节点关键元素说明
元素节点 |
节点说明 |
---|---|
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