Maven库:
http://repo2.maven.org/maven2/
Maven依赖查询:
http://mvnrepository.com/
mvn -v 类似于 javac -version 或者 git --version
在linux上使用maven也需要像使用java一样设置环境变量 这是
export M2_HOME = /?
export PATH = $PATH:$M2_HOME/bin
export MAVEN_OPTS = -Xms256m -Xmx512m
关于myeclipse中的内嵌maven的替换.路径是 Windows-->Preferences-->Maven-->右边点击add进行替换
------------------------------------一般常用命令----------------------------------------
mvn help:system 自动在本用户下创建 ~/.m2/repository
mvn clean compile 清理编译
mvn clean test 清理测试
mvn clean package 清理打包
mvn clean install 清理将打包好的jar存入 本地仓库 注意是本地仓库
mvn archetype:generate 使用Archetype生成项目骨架
mvn clean deploy 根据pom中的配置信息将项目发布到远程仓库中
------------------------------------一般常用命令----------------------------------------
---------------------------------maven目录结构----------------------------------------
src/main/java :正式内容包路径
src/mian/resources :正式的配置文件路径
src/test/java :测试包路径
src/test/resources :测试的配置文件路径
src/main/webapp : war 资源目录
---------------------------------maven目录结构----------------------------------------
----------------------------优化依赖命令-----------------------------------------------
mvn dependency:list 显示所有已经解析的所有依赖
mvn dependency:tree 以目录树的形式展现依赖, 最高层为一层依赖 其次二层依赖 三层依赖....
mvn dependency:analyze 第一部分显示 已经使用但是未显示依赖的的 第二部分显示项目未使用的但是依赖的
----------------------------优化依赖命令-----------------------------------------------
构件: jar 插件 war 所有依赖的jar
构建:编译 测试 打包 发布
---------------------------关于 maven的生命周期 和插件 关系---------------------
生命周期就是接口:表明要干什么事情
插件就是具体的实现:表明怎么干这件事情
---------------------------关于 maven的生命周期 和插件 关系---------------------
聚合,继承,集成测试,自动化部署,(这几块非常重要 自己去瞅瞅吧)
如下是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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <!-- 固定值在MAVEN3中-->
<groupId>cuiyaonan2000</groupId> <!-- 所属于的组 -->
<artifactId>maven</artifactId> <!-- 唯一标示 -->
<version>0.0.1-SNAPSHOT</version> <!-- 版本号 -->
<packaging>war</packaging> <!-- 项目的打包方式,默认使用jar -->
<name>maven项目模板的基本使用</name>
<description> 这里的描述不知道是干吗用</description>
<properties>
<springframework.version>2.5.6</springframework.verson>
<!-- 归类依赖 只需在 <version>${springframework.version}</version> 使用就可以了-->
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
<!-- <type>依赖的类型,大部分情况下不必声明 默认是jar</type> -->
<scope>test</scope> <!-- 依赖范围 传递性依赖 详见p63 -->
<!-- <optional>标记依赖是否可选 不明白 该处的值是 true 和 false 详见p66</optional> -->
<!--
<exclusions>
<exclusion>
排除传递性依赖 只需列出如下的2项就可以了
<groupId></groupId>
<artifactId></artifactId>
</exclusion>
</exclusions>
-->
</dependency>
</dependencies>
<build>
<plugins>
<!-- 设置这个插件的对应Java版本,貌似是为了解决一个历史问题-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
<!-- 如下使用UTF-8 处理资源文件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
<!-- 配置远程版本仓库 -->
<repositories>
<!-- 设置远程版本库 直接收发布版本 不接受快照版本-->
<repository>
<id>jboss</id> <!-- 如果是用central 就会覆盖中央仓库 -->
<name>JBoss Repository</name>
<url>http://repository.jboss.com/maven2/</url>
<release>
<enabled>true</enabled>
<!-- 如下的2个参数详见p83
<updatePolicy>daily</updatePolicy>
<checksumPolicy>ignore</checksumPolicy>
-->
</release>
<snapshots>
<enabled>false</enabled>
</snapshots>
<layout>default</layout>
</repository>
</repositories>
<!-- 将该项目 发布到远程仓库中 -->
<distributionManagement>
<repository>
<id>proj-release</id> <!-- 这里的id是为了 跟setting.xml中的 username 和 userpassword 的id匹配,有的仓库需要权限账户-->
<name>Proj Release Repository</name>
<url>http://192.168.89.130</url>
</repository>
<snapshotRepository>
<id>proj-release</id>
<name>Proj Release Repository</name>
<url>http://192.168.89.130</url>
</snapshotRepository>
</distributionManagement>
</build>
</project>
Maven常用命令2:
1. 创建Maven的普通java项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=projectName
2. 创建Maven的Web项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=webappName
-DarchetypeArtifactId=maven-archetype-webapp
3. 编译源代码: mvn compile
4. 编译测试代码:mvn test-compile
5. 运行测试:mvn test
6. 产生site:mvn site
7. 打包:mvn package
8. 在本地Repository中安装jar:mvn install
9. 清除产生的项目:mvn clean
10. 生成eclipse项目:mvn eclipse:eclipse
11. 生成idea项目:mvn idea:idea
12. 组合使用goal命令,如只打包不测试:mvn -Dtest package
13. 编译测试的内容:mvn test-compile
14. 只打jar包: mvn jar:jar
15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile
( -skipping 的灵活运用,当然也可以用于其他组合命令)
16. 清除eclipse的一些系统设置:mvn eclipse:clean
ps:
一般使用情况是这样,首先通过cvs或svn下载代码到本机,然后执行mvn eclipse:eclipse生成ecllipse项目文件,然后导入到eclipse就行了;修改代码后执行mvn compile或mvn test检验,也可以下载eclipse的maven插件。
mvn -version/-v 显示版本信息
mvn archetype:generate 创建mvn项目
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 创建mvn项目
mvn package 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件
mvn jetty:run 运行项目于jetty上,
mvn compile 编译
mvn test 编译并测试
mvn clean 清空生成的文件
mvn site 生成项目相关信息的网站
mvn -Dwtpversion=1.0 eclipse:eclipse 生成Wtp插件的Web项目
mvn -Dwtpversion=1.0 eclipse:clean 清除Eclipse项目的配置信息(Web项目)
mvn eclipse:eclipse 将项目转化为Eclipse项目
在应用程序用使用多个存储库
<repositories>
<repository>
<id>Ibiblio</id>
<name>Ibiblio</name>
<url>http://www.ibiblio.org/maven/</url>
</repository>
<repository>
<id>PlanetMirror</id>
<name>Planet Mirror</name>
<url>http://public.planetmirror.com/pub/maven/</url>
</repository>
</repositories>
mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/
发布第三方Jar到本地库中:
mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar
-DdownloadSources=true
-DdownloadJavadocs=true
mvn -e 显示详细错误 信息.
mvn validate 验证工程是否正确,所有需要的资源是否可用。
mvn test-compile 编译项目测试代码。 。
mvn integration-test 在集成测试可以运行的环境中处理和发布包。
mvn verify 运行任何检查,验证包是否有效且达到质量标准。
mvn generate-sources 产生应用需要的任何额外的源代码,如xdoclet。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lifxue/archive/2009/10/14/4662902.aspx
常用命令:
mvn -v 显示版本
mvn help:describe -Dplugin=help 使用 help 插件的 describe 目标来输出 Maven Help 插件的信息。
mvn help:describe -Dplugin=help -Dfull 使用Help 插件输出完整的带有参数的目标列
mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull 获取单个目标的信息,设置 mojo 参数和 plugin 参数。此命令列出了Compiler 插件的compile 目标的所有信息
mvn help:describe -Dplugin=exec -Dfull 列出所有 Maven Exec 插件可用的目标
mvn help:effective-pom 看这个“有效的 (effective)”POM,它暴露了 Maven的默认设置
mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook 创建Maven的普通java项目,在命令行使用Maven Archetype 插件
mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main Exec 插件让我们能够在不往 classpath 载入适当的依赖的情况下,运行这个程序
mvn dependency:resolve 打印出已解决依赖的列表
mvn dependency:tree 打印整个依赖树
mvn install -X 想要查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行
mvn install -Dmaven.test.skip=true 给任何目标添加maven.test.skip 属性就能跳过测试
mvn install assembly:assembly 构建装配Maven Assembly 插件是一个用来创建你应用程序特有分发包的插件
mvn jetty:run 调用 Jetty 插件的 Run 目标在 Jetty Servlet 容器中启动 web 应用
mvn compile 编译你的项目
mvn clean install 删除再编译
mvn hibernate3:hbm2ddl 使用 Hibernate3 插件构造数据库
分享到:
相关推荐
Maven 是一个项目管理和构建自动化工具,提供了许多实用的命令来简化项目的开发和维护过程。在这篇文章中,我们将总结和讲解 Maven 中的一些常用命令,它们将帮助您更好地使用 Maven。 创建 Maven 项目 Maven 提供...
Maven 是一个基于项目对象模型(Project Object Model,POM)的项目管理工具,主要用于 Java 项目的构建、测试和部署。Maven 的强大之处在于其提供了一种标准化的方式来构建、测试和部署项目,使得开发者可以更方便...
Maven 是一个基于项目对象模型(Project Object Model,POM)的项目管理工具,主要用于管理和构建 Java 项目。以下是 Maven 中的一些常用命令: 1. 创建项目 Maven 提供了 archetype 机制来快速创建项目。使用以下...
### Maven常用命令 1. **初始化项目结构**: - `mvn archetype:generate` 是用于创建一个新的Maven项目的基础框架。你可以根据提示选择对应的archetype,如maven-archetype-quickstart,来快速生成一个简单的...
以下是对标题和描述中提及的Maven常用命令的详细解释: 1. `mvn clean`:这个命令用于清理项目,删除`target`目录下的所有生成物,包括编译后的类文件、测试结果等。 2. `mvn compile`:编译项目的源代码,将`src/...
maven是一个基于项目对象模型(POM)的项目管理和综合工具,主要用于Java项目的构建、测试、打包、部署等。maven的配置文件是pom.xml,包含了项目的基本信息、依赖关系、插件配置等信息。本文将详细介绍maven的配置...
一、Maven常用命令 1. 初始化项目结构: `mvn archetype:generate` - 这个命令用于创建一个新的Maven项目,根据提示选择相应的 archetype(项目模板)来生成基础项目结构。 2. 编译源代码: `mvn compile` - ...
本文将对Maven构建Web工程相关的常用命令进行总结。 #### Maven项目初始化 - **初始化Java应用** - 命令格式:`mvn archetype:generate -DgroupId=...
### Maven常用命令详解 #### 1. `mvn -v` - **命令**: `mvn -v`(注意:实际命令应为 `mvn --version` 或 `mvn -version`) - **功能**: 显示Maven当前版本信息。 - **应用场景**: 当需要确认当前使用的Maven版本时...
在Eclipse中使用Maven进行项目管理和构建时,了解这些基本概念和命令是非常重要的。它们不仅能够帮助开发者高效地构建和部署项目,还能有效避免一些常见的问题。通过正确设置Maven配置以及合理使用这些命令,可以极...
Maven是Java开发中的一款项目管理和综合工具,它简化了构建、依赖管理以及项目的生命周期过程。在"maven常用包"这个主题中,我们主要探讨的是Maven生态系统中的核心概念、重要组件以及常用的插件和配置。 一、Maven...
还有一些其他的常用命令可以帮助开发者更好地管理 Maven 项目: - 显示当前项目的 POM 文件:`mvn help:effective-pom` - 分析项目依赖关系:`mvn dependency:analyze` 和 `mvn dependency:tree` - 跳过测试编译:`...
Maven是Apache组织开发的一个项目管理和综合工具,主要用于Java项目构建、依赖管理和项目信息管理。它通过一个统一的构建过程,使得项目的构建变得简单且可预测。本文将深入探讨如何使用Maven来构建Java项目以及掌握...
### Maven常用命令 - `mvn clean`: 清理项目,删除target目录。 - `mvn compile`: 编译源代码。 - `mvn test`: 运行单元测试。 - `mvn package`: 将编译后的代码打包,如JAR或WAR文件。 - `mvn install`: 将打包好...
理解这些命令可以帮助你更有效地管理和构建Maven项目。例如,当你从版本控制系统检出代码后,可以运行`mvn eclipse:eclipse`生成Eclipse项目,然后使用`mvn compile`或`mvn test`进行编译和测试。如果需要部署项目,...
总的来说,Maven是一个强大的项目管理工具,通过标准化的构建过程和依赖管理,提高了开发效率。熟练掌握Maven命令和配置,能帮助开发者更高效地管理Java项目。在`maven_java`这个项目中,你可以进一步实践上述概念,...