163的博客不适合用来作为技术博客,因为博客不支持code标签,贴个代码会很混乱,而且163的博客很少技术文章,收藏一些东西也很麻烦,以上提到的两点不足在javaeye上都完美解决了,所以,我决定还是把技术类的博客记录迁移到javaeye好了
maven这东西,迟早还是得用的
1. maven安装
没啥好说的,http://maven.apache.org/下载安装就是,设置Path,命令行下执行mvn -version能ok就行了
2. 与eclipse集成
设置M2_REPO变量,指向本地仓库
有空就再装个m2eclipse插件呗,反正我的网速慢,是没空装了。。。几十M呢
3. maven创建项目
一般的做法都是
mvn archetype:create -Dxxx
参数太多,记不住,而且运行会出现提示
[WARNING] This goal is deprecated. Please use mvn archetype:generate instead
就是说人家maven都不推荐用这种方式来创建项目了,那还是不要折腾自己了,还是用generate吧
mvn archetype:generate
它是交互式的项目创建过程,参数都很好理解
顺便将项目转成eclipse项目,方便导入到eclipse中
mvn eclipse:eclipse
完事之后目录大概是这样的,我创建的是simple j2ee项目
| pom.xml
| .classpath
| .project
|
+---src
| +---main
| | +---java
| | | \---com
| | | \---xx
| | | \---simple
| | | App.java
| | | SimpleTest.ja
| | |
| | \---resources
| | log4j.properties
| |
| \---test
| \---java
| \---com
| \---xx
| \---simple
| AppTest.java
|
\---target
+---test-classes
| \---com
| \---xx
| \---simple
| AppTest.class
|
\---classes
| log4j.properties
|
\---com
\---xx
\---simple
App.class
SimpleTest.class
4. 关于pom.xml
我觉得maven最好用的就是jar包的管理,不在需要自己去到处搜jar,直接扔到dependency里面就ok,可是现在问题又来了,比如我需要某个jar包,那我怎么知道这个包的groupId和artifactId分别是什么呢?不知道这些信息,那就没法加dependency了
这是我的sample项目pom.xml,难道这些dependency只能靠收集了?
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.xxx.simple</groupId>
<artifactId>simple</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>simple</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.simpleframework</groupId>
<artifactId>simple-xml</artifactId>
<version>2.1.3</version>
</dependency>
<!--log4j jar is required-->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>
</project>
好吧,只好去网上搜个pom.xml,看他们的dependency是怎么写的了
5. maven tomcat plugin
配置tomcat plugin
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
</plugin>
然后就可以执行
mvn tomcat:run
启动tomcat了,不用打包再部署,那太慢,不过我还是习惯在eclipse下用tomcat的,配个context就好了
6. 刚收集了一些maven的其他信息
validate,验证工程是否正确,所有需要的资源是否可用。
compile,编译项目的源代码。
test-compile,编译项目测试代码。
test,使用已编译的测试代码,测试已编译的源代码。
package,已发布的格式,如jar,将已编译的源代码打包。
integration-test,在集成测试可以运行的环境中处理和发布包。
verify,运行任何检查,验证包是否有效且达到质量标准。
install,把包安装在本地的repository中,可以被其他工程作为依赖来使用
deploy,在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
generate-sources,产生应用需要的任何额外的源代码,如xdoclet。
还有据说
mvn dependency:tree
可以看到各个jar的依赖关系树
6. 提取项目的所有依赖包到某个目录
当要给没有装maven的人传项目的时候,这个就有用了
mvn dependency:copy-dependencies -DoutputDirectory=lib
6.5. 利用maven下载jar相应的源代码,这样eclipse就可以debug进去了
mvn dependency:sources
7. 相关资料链接
maven热部署web应用
mvn各种插件的详细说明
分享到:
相关推荐
- **插件系统**:Maven使用插件执行各种构建任务,如编译、测试、打包、部署等。 - **生命周期**:Maven定义了一套标准的构建生命周期,如compile、test、package、install和deploy阶段。 - **继承和聚合**:项目...
maven安装与配置
通过上述步骤,不仅完成了Maven的基本安装与配置,还初步了解了如何使用Maven创建简单项目。后续可以继续深入学习Maven的各种功能,如依赖管理、构建生命周期、插件使用等,以便更好地应用于实际开发中。
2、 Maven 初步 2.1. 安装 安装 Maven 需要下载对应版本的二进制包,解压后将其路径添加到系统的环境变量PATH中,确保可以在命令行中直接执行mvn命令。 2.2. 配置本地仓库 Maven 使用本地仓库存储下载的依赖库,...
maven的初步认识 以及安装详情。
总的来说,通过创建一个简单的Maven HelloWorld程序,我们可以初步了解Maven的基本概念和工作流程,这对于后续更复杂的项目构建将大有裨益。在实际开发中,Maven还能帮助我们管理各种依赖,自动化构建过程,并与持续...
**阅读建议**:建议读者具备基本的 Java 开发和 Maven 使用经验,对持续集成有初步了解。先按照教程中的步骤完成 Jenkins 和 Maven 的安装配置,然后创建一个简单的 Java 项目,并将其配置为 Maven 项目。在 Jenkins...
在本文中,我们将详细介绍如何使用Maven来搭建一个gRPC Java项目,并提供一个简单的示例。gRPC是一个高性能、开源的通用RPC框架,它利用Protocol ...但这个例子足以让你对gRPC和Maven的结合使用有一个初步的了解。
通过这个简单的 HelloWorld 示例,你已经对 Maven 有了初步的了解。随着经验的积累,你会发现 Maven 在大型项目中的价值不可估量,它简化了项目构建,促进了团队协作,并且与许多其他工具和框架无缝集成。
二、Maven初步 1. 安装:首先,你需要下载Maven的最新版本(如Maven3.0.4),解压缩到指定目录,并将bin目录添加到系统环境变量PATH中,以便在命令行中直接使用mvn命令。 2. 配置本地仓库:Maven默认在用户主目录的`...
** Maven快速上手指南 ** Maven是一款强大的Java项目管理工具,它可以...通过以上内容,你应该对Maven有了初步了解。实践是掌握Maven的关键,尝试创建项目、管理依赖、运行构建,你将更深入地理解Maven的强大之处。
在介绍如何在Mycelipse9下整合springMVC和mybatis的maven项目之前...通过此文档的详细步骤,即便是刚走出校园的新人也能逐步熟悉并掌握如何在Mycelipse9中使用Maven构建整合了SpringMVC和Mybatis的企业级Java Web项目。
在完成初步搭建之后,决定将其转换为Maven项目以利用Maven的强大功能。然而,在转换过程中遇到了一个问题:JSP页面中的EL表达式没有被正确解析,而是原样输出。这显然是不正常的。 #### 三、问题定位与分析 经过...
通过这个简单的示例,你应该对Maven的工作方式和基本概念有了初步了解。Maven的强大之处在于它能够自动化处理构建过程,包括依赖管理、编译、测试、打包、部署等一系列任务,极大地提高了开发效率。继续深入学习...
在描述中提到“适合于maven学习初步阶段的学习者参考”,这意味着我们将关注基础的Maven概念和操作,如创建Maven项目、理解`pom.xml`结构、执行Maven命令(如`mvn clean install`来构建和安装项目)、以及使用Maven...
通过以上介绍,我们对 Maven 的基本概念和使用方法有了初步的了解。Maven 通过其约定优于配置的设计理念和丰富的插件生态系统,极大地简化了 Java 项目的构建过程,提高了开发效率。对于初学者来说,掌握 Maven 的...