有的时候 人就是犯贱 东西每天回来研究一下 是没有结果的 但是在公司 坚定的研究 那结果就看的见了 我就是这样的 呵呵。
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如下:
<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文件。
<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文件
<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下面的代码。 有没有觉得爽。
这边我写了一段代码测试一下 是可以的 看下图标注的地方。 有什么想说的 可以在下面评论。