有的时候 人就是犯贱 东西每天回来研究一下 是没有结果的 但是在公司 坚定的研究 那结果就看的见了 我就是这样的 呵呵。
Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
下载地址:http://maven.apache.org.
首先要在eclipse下使用maven 其实也不难 本来eclipse就集成了 只不过仓库是在c盘下面。下面就来看看怎么使用maven 使用依赖模块。
首先下载maven 解压到你喜欢的盘符。
打开你最熟悉的eclipse 在下面配置上你刚刚解压的maven。
配置一下setting.xml配置文件 配置到本地库。
然后基本的配置操作就结束了。 下面就是在eclipse下面创建maven项目了。
上面 quick 那个是java项目 就是你要写se的代码 webapp 是web项目的。
我这边建了7个项目。其中3个拿出来做例子。
首先看下setting这个项目 这个项目下面我就配置要用到的jar 。pom.xml如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
<project xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0
.
0
</modelVersion>
<groupId>me.send</groupId>
<artifactId>setting.configuration</artifactId>
<version>
0.0
.
1
-SNAPSHOT</version>
<name>setting.configuration</name>
<url>http:
//maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>
3.8
.
1
</version>
<scope>test</scope>
</dependency>
<!-- MySql -->
<!-- mysql jdbc -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>
5.1
.
30
</version>
</dependency>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>
3.1
.
1
</version>
</dependency>
<!-- mybatis - spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>
1.1
.
1
</version>
</dependency>
</dependencies>
<packaging>pom</packaging>
<modules>
<module>../produce.service</module>
<module>../produce.client</module>
</modules>
</project>
|
module 是说 你要提供给其他的什么项目使用 我这边提供给 service client这2个项目使用。
dependency 这个大家都清楚 是用互联网的其他的框架提供出来的 要是不知道怎么写 可以直接在
http://mvnrepository.com/ 这个网站上直接搜索。上面会显示这个文件完整的写法。
下面看下service 的pom文件。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
<project xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0
.
0
</modelVersion>
<artifactId>produce.service</artifactId>
<name>produce.service</name>
<url>http:
//maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-
8
</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>
3.8
.
1
</version>
<scope>test</scope>
</dependency>
</dependencies>
<!-- 增加下面的 项目引用 -->
<parent>
<groupId>me.send</groupId>
<artifactId>setting.configuration</artifactId>
<version>
0.0
.
1
-SNAPSHOT</version>
</parent>
<packaging>jar</packaging>
</project>
|
这个主要是使用setting项目的jar 看到这边我们就不需要配置 dependency 了 当然下面的packaging也变成了jar 说明这个是要生成jar文件的。
在看一下最后的client项目的pom文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
<project xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0
.
0
</modelVersion>
<artifactId>produce.client</artifactId>
<name>produce.client</name>
<url>http:
//maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-
8
</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>
3.8
.
1
</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>me.send</groupId>
<artifactId>produce.service</artifactId>
<version>
0.0
.
1
-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
<parent>
<groupId>me.send</groupId>
<artifactId>setting.configuration</artifactId>
<version>
0.0
.
1
-SNAPSHOT</version>
</parent>
<packaging>jar</packaging>
</project>
|
这边我要使用setting下面的jar 还要使用service项目下面的所有的代码 我就配置了一个parent标签 和 dependency 。这样 你在service下面写的代码就可以直接在client项目调用了 不需要复制过来了。
这样的好处就是 你写一处代码 直接引用 不需要像以前那样 要复制 包名不对 还要新建包什么的。对项目的分模块管理是不是爽多了 还有就是jar 你直接写pom 不需要再去下载。另一个项目要使用 直接引用这个项目的jar就可以 还不需要复制pom下面的代码。 有没有觉得爽。
这边我写了一段代码测试一下 是可以的 看下图标注的地方。 有什么想说的 可以在下面评论。
引自:http://my.oschina.net/superman158/blog/471396