- 浏览: 435465 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (167)
- 技术文章 (26)
- HTML & XHTML & XML (16)
- javascript (11)
- ajax (1)
- css (8)
- spring (1)
- hibernate (8)
- struts (4)
- SEO&SEM (6)
- php (13)
- MySQL (11)
- Oracle (1)
- 学习笔记 (26)
- 技术文档下载 (6)
- 笔随心动 (16)
- 奇闻天下 (7)
- 其他文档 (10)
- Unity3d (1)
- memcached (1)
- PHP 浏览器版本 os 操作系统版本 (1)
- maven (1)
- Android (1)
- php是 (1)
- lower_case_table_names=1 (1)
最新评论
-
18335864773:
目前 用pageoffice组件的比较多.POI对Office ...
Poi的一个实例——用SQL动态导出Excel文件 -
afreon:
http://blog.yoodb.com/yoodb/art ...
org.hibernate.WrongClassException 错误解决 -
springaop_springmvc:
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
Maven Pom.xml 元素详解 -
影非弦:
显示的是A server error has occurred ...
DWR 弹出Error 解决 -
xu3352:
非常不错,:idea: ,感谢楼主
CSS3 中文文档
一、安装Maven并设定环境变量
首先到 http://maven.apache.org 去下一个maven最新的安装包,比如2.0.8,随便解压到一个目录,假设 C:\mvn208。
然后设定环境变量:
SET M2_HOME=%install-dir%
SET MAVEN_HOME=%install-dir%/bin
默认的本地 Repositories-Path 在 %M2_HOME%/conf/settings.xml中,找到<localRepository>修改之即可。
这步也很重要,如果出现mvn运行时错误请检查此处。
查看Maven版本:
mvn -v | -ver | -verson
二、创建简单的Maven-project
建个目录C:\mvnTest,命令行输入> mvn archetype:create -DgroupId=com.test -DartifactId=mytest
-DgroupId -- 项目组名称,也可以理解为默认的包名称。
-DartifactId -- 项目名称、工程名,等价于 project-name
这样就在目录C:\mvnTest\mytest下生成了一个mvn-project了。
进入该目录发现有个pom.xml(以下简称pom)文件,mvn的全部配置(对于此项目)都在这了。
通常开发需要集成到Eclipse,生成.project,.classpath
在pom-path下输入:
mvn eclipse:eclipse
三、使用Help插件
在pom-path下尝试输入一下命令:
mvn help:active-profiles -- 列出当前构建中活动的 Profile(项目的,用户的,全局的)。
mvn help:effective-pom -- 显示当前构建的实际 POM,包含活动的 Profile。
mvn help:effective-settings -- 打印出项目的实际 settings, 包括从全局的 settings 和用户级别 settings继承的配置。
mvn help:describe -- 描述插件的属性。它不需要在项目目录下运行。但是你必须提供你想要描述插件的 groupId 和 artifactId。
describe加上参数就会像下面这样:
mvn help:describe -Dcmd=install
mvn help:describe -Dcmd=help:describe
mvn help:describe -Dplugin=org.apache.maven.plugins:maven-help-plugin
mvn help:describe -DgroupId=org.apache.maven.plugins -DartifactId=maven-help-plugin
具体作用,光看名字就一目了然了。
四、使用Archetype 插件
创建一个maven项目:
mvn archetype:create -DgroupId=com.sunnysoft -DartifactId=sunnyware -DpackageName=com.sunnysoft.sunnyware
...
-DpackageName -- 指定包名称(不写的话就是-DgroupId了)
执行后生成的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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.sunnysoft</groupId> <artifactId>sunnyware</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>sunnyware</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project>
项目的目录:
生成的目录及文件: \---sunnyware | pom.xml | \---src +---main | \---java | \---com | \---sunnysoft | \---sunnyware | App.java | \---test \---java \---com \---sunnysoft \---sunnyware AppTest.java
运行 mvn install 来初始化项目。
构建后的目录及文件: \---sunnyware | pom.xml | +---src | +---main | | \---java | | \---com | | \---sunnysoft | | \---sunnyware | | App.java | | | \---test | \---java | \---com | \---sunnysoft | \---sunnyware | AppTest.java | \---target | sunnyware-1.0-SNAPSHOT.jar | +---classes | \---com | \---sunnysoft | \---sunnyware | App.class | +---surefire-reports | com.sunnysoft.sunnyware.AppTest.txt | TEST-com.sunnysoft.sunnyware.AppTest.xml | \---test-classes \---com \---sunnysoft \---sunnyware AppTest.class
Look!目录中多了测试和部署文件!
用 java -cp target/sunnyware-1.0-SNAPSHOT.jar com.sunnysoft.sunnyware.App 来测试App.java 吧!
CONTINUE
当 Maven 经过以 package 为结尾的默认生命周期的时候,下面的目标按顺序被执行:
resources:resources
Resources 插件的 resources 目标绑定到了 resources 阶段。这个目标复制 src/main/resources 下的所有资源和其它任何配置的资源目录,到输出目录。
compiler:compile
Compiler 插件的 compile 目标绑定到了 compile 阶段。这个目标编译src/main/java 下的所有源代码和其他任何配置的资源目录,到输出目录。
resources:testResources
Resources 插件的 testResources 目标绑定到了 test-resources 阶段。这个目标复制 src/test/resources 下的所有资源和其它任何的配置的测试资源目录,到测试输出目录。
compiler:testCompile
Compiler 插件的 testCompile 目标绑定到了 test-compile 阶段。这个目标编译 src/test/java 下的测试用例和其它任何的配置的测试资源目录,到测试输出目录。
surefire:test
Surefire 插件的 test 目标绑定到了 test 阶段。这个目标运行所有的测试并且创建那些捕捉详细测试结果的输出文件。默认情况下,如果有测试失败,这个目标会终止。
jar:jar
Jar 插件的jar 目标绑定到了 package 阶段。这个目标把输出目录打包成JAR文件。
Maven exec 插件:
mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main 相当于测试一个有main方法的class文件。(比如 java Main)
Maven dependency 插件:
mvn dependency:analyze -- 分析项目依赖性
mvn dependency:resolve -- 显示项目依赖
mvn dependency:tree -- 显示项目依赖的树形结构
单元测试:
mvn test -- 直接运行Maven单元测试。实际上在 mvn install 或 mvn package 同时也会运行单元测试。test 依赖在pom中的定义像这样:
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency>
如果你打算在构建时忽略掉错误的信息,就这样定义:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <!-- 此值为true则忽略测试中的构建错误 --> <testFailureIgnore>true</testFailureIgnore> <!-- 此值为true则不执行单元测试 --> <skip>true</skip> </configuration> </plugin> </plugins> </build>
关于此插件可以参考:http://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html
命令行的话:
mvn test -Dmaven.test.failure.ignore=true -- 忽略错误构建
另外,这行最常用到的:
mvn package -Dmaven.test.skip=true -- 在打包时跳过测试
Maven Assembly (创建分发包) 插件:
pom定义:
<plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <!-- 这样可以把项目依赖的class或jar文件也一并构建进去 --> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> </plugin>
创建webapp:
就像创建一个普通的JavaProject一样简单:
mvn archetype:create -DgroupId=com.sunnysoft -DartifactId=sunnywareweb -DpackageName=com.sunnyware -DarchetypeArtifactId=maven-archetype-webapp
-DarchetypeArtifactId=maven-archetype-webapp 加上即可。
最后,要清理项目时候就用:
mvn clean install -- 清理项目。
发表评论
-
MySQL 分区表举例
2017-03-08 19:42 1663关于MySQL分区表的概念百度上一大堆,这里给出几个例子供 ... -
PHP mysqli_stmt 的 bindparam问题
2014-09-25 15:47 5918在使用 mysqli_stmt 相关预处理SQL的方法时,调 ... -
写了一个PHP MongoDB 的封装,经管已经有了不少轮子了
2014-07-11 12:05 5948<?php /** * Descripti ... -
数字绕圈算法 JS 实现
2014-06-25 01:26 1428这是一道某公司的算法题,我们姑且称之为“数字绕圈算法”。 ... -
Unity3d Trigger 和 Collision 使用
2014-06-21 03:17 2810大致研究了下,可以有这几种情况: 如果物理视觉上有碰撞 ... -
PHP 文件遍历
2014-06-16 10:42 780$dir = "D:\workspace" ... -
VS2012警告未能加载包“Visual C++ package”
2014-02-19 15:33 2470安装了windows更新后就出现VS2012无法打开项目的问 ... -
常用数学公式
2011-07-11 14:23 1104常用数学公式表 ... -
WTK 模拟器内存不足问题
2010-01-13 17:42 2175在使用WTK模拟器运行较大的程序时偶尔会报内存不足的异常,解决 ... -
是String,StringBuffer还是StringBuilder?
2009-12-12 14:21 1007相信大家对 String 和 StringB ... -
Java面试题
2009-12-12 14:16 1137Java面试中,最常被人问到的几个问题: 1. java.ut ... -
JS 小算法
2009-09-03 15:09 971// 任意长度的int数组arr,求指定位置n之前的元素和 ... -
Event keyCode 键值大全
2009-07-09 15:01 1823keycode 8 = BackSpace BackS ... -
jQuery 中文数字排序问题
2009-06-01 12:45 3870顾名思义就是对中文数字:第一、第二、第三等等。 需要对 ... -
Maven Pom.xml 元素详解
2009-05-06 10:43 11219parent: 给出父项目的 ... -
mvn jetty:run 错误
2009-05-05 16:00 9501执行mvn jetty:run 来测试新构建的webapp时会 ... -
MySQL大小写问题
2009-03-17 09:04 13411.创建表时 CREATE TABLE T( A VAR ... -
maven运行时错误解决
2009-03-10 16:31 29721今日在做maven项目部署时出现了这样一个错误,开始时不得要领 ... -
Code Review需要做什么?
2009-02-24 18:17 13961. 完整性检查(Completeness) 代码是否完全实现 ... -
Struts2 redirect参数取不到的问题解决方法
2009-02-09 15:57 4126Struts2中通过配置文件重定向后常出现参数找不到的问题,总 ...
相关推荐
apache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9.rarapache-maven-3.3.9....
apache-maven-3.9.9(含windows和linux版本).zip包含如下内容: apache-maven-3.9.9-bin.tar.gz; apache-maven-3.9.9-bin.zip; apache-maven-3.9.9-src.tar.gz; apache-maven-3.9.9-src.zip; maven安装说明.txt...
apache-maven-3.6.1.zip分享给需要的同学 apache-maven-3.6.1.zip分享给需要的同学 apache-maven-3.6.1.zip分享给需要的同学 apache-maven-3.6.1.zip分享给需要的同学 apache-maven-3.6.1.zip分享给需要的同学apache...
org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration) 解决方案: 第一种方式 war项目 <groupId>org.apache....
apache-maven-3.2.5.zip 安装包,apache-maven-3.2.5.zip 安装包apache-maven-3.2.5.zip 安装包apache-maven-3.2.5.zip 安装包apache-maven-3.2.5.zip 安装包apache-maven-3.2.5.zip 安装包apache-maven-3.2.5.zip ...
apache-maven-3.9.9-bin.zip.cab
apache-maven-3.3.9.zip
Maven的setting.xml下载
org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration) 网上更新eclipse插件的网址都失效了找了好久才有个离线版 ...
apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...
直接离线安装eclipse中的maven插件,在你的eclipse安装...在文件中添加:path=D:\eclipse\myplugins\maven,保存并关闭maven.txt,并将后缀改为maven.link,重启eclipse,打开windows-->Preferences,查看死否安装成功
Java_apache-maven-3.3.1.rar_安装包_kaic Java_apache-maven-3.3.1.rar_安装包_kaic Java_apache-maven-3.3.1.rar_安装包_kaic Java_apache-maven-3.3.1.rar_安装包_kaic Java_apache-maven-3.3.1.rar_安装包_kaic ...
Apache Maven 是一个强大的Java项目管理工具,它通过提供一套标准化的构建过程,使得Java开发更加简单和高效。Maven 3.9.2是Maven的最新版本之一,它包含了各种改进和修复,以优化开发者的工作流程。在这个“apache-...
Maven框架,本地jar资源仓,中央仓下载jar资源 有时在你的构建过程中,需要将第三方jar包添加到本地仓库中,因为它并存在于像Maven中央仓库或其它的公共仓库中。为了让Maven能够正确获取到jar包,第三方jar包必须...
在IT行业中,Maven是一个广泛使用的项目管理和综合工具,它主要负责构建、依赖管理和项目信息管理。本话题聚焦于如何通过Maven下载`QRCode.jar`包,这是一款用于生成二维码的Java库。二维码(Quick Response Code)...
apache maven 3.x.x所有Linux, Windows版本下载的百度网盘链接。 apache-maven-3.0.4-bin.tar.gz apache-maven-3.0.4-bin.zip apache-maven-3.0.5-bin.tar.gz apache-maven-3.0.5-bin.zip apache-maven-3.1.0-bin....
Maven原版settings.xml配置文件,根据个人需要,可以打开对应注释或替换相关阿里云镜像或远程仓库地址即可使用。
org.maven.ide.eclipse.jdt_0.12.1.20110112-1712.jar
1) Error injecting constructor, java.lang.NoSuchMethodError: org.apache.maven.model.validation.DefaultModelValidator: method 'void ()' not found at org.jetbrains.idea.maven.server.embedder....
maven-3.9.9