文章目录
pom.xml文件解读
- pom.xml文件解读
- 标签 dependency 的解读
4.0.0
cn.erhuowang
erhuowang-maven2
war
1.0-SNAPSHOT
erhuo-maven
http://erhuowang.cn
A maven project to study maven.
erhuowang
http://erhuowang.cn
Demo
chaibozhou@163.com
chaibozhou@163.com
chaibozhou@163.com
chaibozhou@163.com
HELLO WORLD
chaimm
chaibozhou@163.com
Project Manager
Architect
demo
http://erhuowang.cn
No
-5
Apache 2
http://www.baidu.com/erhuwoang/LICENSE-2.0.txt
repo
A business-friendly OSS license
scm:svn:http://svn.baidu.com/banseon/maven/banseon/banseon-maven2-trunk(dao-trunk)
scm:svn:http://svn.baidu.com/banseon/maven/banseon/dao-trunk
http://svn.baidu.com/banseon
demo
http://www.erhuowang.cn
......
......
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.baidu.com/banseon:/usr/local/maven-snapshot
banseon-site
business api website
scp://svn.baidu.com/banseon:/var/www/localhost/banseon-web
标签 dependency 的解读
该标签会让Maven自动到本地仓库或远程仓库去查找构件,找到后会自动创建项目级别的资源库,然后会将资源库同步到依赖此构件的模块的classpath中,也就是模块的依赖库中,如下图所示: classpath 就是类路径,作为编辑器的输入参数,这个参数指定了很多的路径,就是告诉编译器到指定的路径下去查找需要的类文件。
这些项目引入的依赖资源(构件)都是通过 Maven 发布到本地的 Maven 仓库中的,可以是 class 文件也可以是 java 源代码文件。
当构建项目时(也就是编译项目),会到 classpath 指定的路径下查找需要的类文件,如果是源文件会自动编译成 class 文件。
依赖库也好,资源库也罢,其实都只是存储着类文件的实际路径而已。
当你在运行代码时,比如测试某个方法时,会先构建项目(编译项目),IDEA 就会去运行编译指令,并将 classpath 作为参数传给指令,参数 classpath 指定了很多路径,告诉编译器要找关联类文件时就到这些路径下去查找。
IDEA 在编译Java源文件时,其实就是去执行了下面的命令:
javac -classpath path1:path2:path3 -d /Users/liaowenxiong/Documents/IdeaProjects/struts2-tag/target/classes *.java