`
zhb8015
  • 浏览: 399539 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Group-logo
Spring Roo杂谈
浏览量:0
社区版块
存档分类
最新评论

maven笔记

阅读更多

跳过测试阶段:

mvn package -DskipTests

临时性跳过测试代码的编译:

mvn package -Dmaven.test.skip=true

 

maven.test.skip同时控制maven-compiler-plugin和maven-surefire-plugin两个插件的行为,即跳过编译,又跳过测试。

 

指定测试类

mvn test -Dtest=RandomGeneratorTest

以Random开头,Test结尾的测试类

mvn test -Dtest=Random*Test

用逗号分隔指定多个测试用例

mvn test -Dtest=ATest,BTest

 

指定即使没有任何测试用例也不要报错

test参数必须匹配至少一个测试类,否则会报错并导致构建失败。此时可使用以下配置来指定即使没有任何测试用例也不要报错。

mvn test -Dtest -DfailIfNoTests = false

 

POM文件配置包含与排除测试用例

 

使用** / * Test.java 来匹配所有以Tests结尾的Java类。两个星号**用来匹配任意路径,一个星号*用来获取除路径风格符外的0个或多个字符。还可使用excludes来排除一些测试类。

 

 

[html] view plaincopy

<plugin>  

    <groupId>org.apahce.maven.plugins<groupId>  

    <artifactId>maven-surefire-plugin</artifactId>  

    <version>2.5</version>  

    <configuration>  

        <includes>  

            <include>**/*Tests.java</include>  

        </includes>  

    </configuration>          

</plugin>  

 

maven打资源包:

一种  进入cmd命令行,进入项目工程pom.xml所在路径目录,运行  mvn source:jar

另一种用ide

 

发布到本地Maven仓库中,在pom.xml添加如下      mvn install

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-source-plugin</artifactId>
      <version>2.1.2</version>
      <executions>
        <execution>
          <id>attach-sources</id>
          <phase>verify</phase>
          <goals>
            <goal>jar-no-fork</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

 4、Maven创建web project

$ mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

 e.g:

$ mvn archetype:generate -DgroupId=com.javacodegeeks -DartifactId=SampleWebApplication -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

 

 5、maven repository

 http://www.ibiblio.org/maven2

 http://mirrors.ibiblio.org/pub/mirrors/maven2  

 http://repo.springsource.org/libs-milestone-local

 http://search.maven.org/ 

 http://mvnrepository.com/

 http://repository.jboss.org/maven2  

http://www.mvnsearch.org/maven2  

 
6、创建项目 
   JAVA WEB项目:

 

$ mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

 

$ mvn archetype:generate -DgroupId=com.javacodegeeks -DartifactId=SampleWebApplication -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
5、修改JDK编译版本
     修改MAVEN全局JDK:
<profiles>     
      <profile>       
           <id>jdk-1.7</id>       
           <activation>       
               <activeByDefault>true</activeByDefault>       
               <jdk>1.7</jdk>       
           </activation>       
           <properties>       
               <maven.compiler.source>1.7</maven.compiler.source>       
               <maven.compiler.target>1.7</maven.compiler.target>       
               <maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>       
           </properties>       
   </profile>      
</profiles>   
 
   修改项目pom.xml
<build>
    <finalName>practise</finalName>
    <plugins>
    	<plugin>
    		<groupId>org.apache.maven.plugins</groupId>  
            <artifactId>maven-compiler-plugin</artifactId>  
            <version>2.0.2</version>  
            <configuration>  
                <source>1.7</source>  
                <target>1.7</target>  
            </configuration> 
    	</plugin>
    </plugins>
  </build>
 

 *********************************************

 1、Maven内置变量说明:

  • ${basedir} 项目根目录
  • ${project.build.directory} 构建目录,缺省为target
  • ${project.build.outputDirectory} 构建过程输出目录,缺省为target/classes
  • ${project.build.finalName} 产出物名称,缺省为${project.artifactId}-${project.version}
  • ${project.packaging} 打包类型,缺省为jar
  • ${project.xxx} 当前pom文件的任意节点的内容

2、一些命令:

  • 生成eclipse工程文件:mvn eclipse:clean eclipse:eclipse -DdownloadSources
  • 如果执行单元测试出错,用该命令可以在console输出失败的单元测试及相关信息:mvn -Dsurefire.useFile=false
  • 有时候,希望在mvn install时,对项目中的单元测试进行调试,使用该命令:mvn install -Dmaven.surefire.debug 。在使用该命令前,在你将要调试的代码中设置好断点,然后运行该命令。该命令执行一会之后,它的build过程会显示信息:Listening for transport dt_socket at address : 5005 。看到这个提示信息之后,在eclipse中,在Debug Configuration窗口,新建Remote Java Application,port设置为5005,然后点击“debug”按钮。之后,刚才的mvn命令将继续往下执行,直到运行到有断点的代码,则停留下来,这时在eclipse中可以调试运行的代码。

 3. maven jetty 插件的一些命令:(资料:http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin

  • 启动:mvn jetty:run    默认的端口号是8080。
  • 启动时,设置端口号: mvn -Djetty.port=9999 jetty:run
  • debug的方式启动:mvnDebug jetty:run    启动之后,会显示具体的debug端口

*************************************************************************************************

 

 

参考:

maven测试配置

http://blog.csdn.net/wirelessqa/article/details/14057083

安装 jar到本地或仓库

http://www.blogjava.net/fancydeepin/archive/2012/06/12/380605.html

maven资源包打法

http://www.tuicool.com/articles/NFvAbm

 maven专家

http://www.juvenxu.com/about/

4、参照 创建项目

http://examples.javacodegeeks.com/enterprise-java/maven/create-web-application-project-with-maven-example/

5、专家博客

http://www.juvenxu.com/

 

 

 

分享到:
评论

相关推荐

    黑马maven笔记第二天

    ### 黑马Maven笔记第二天知识点总结 #### Maven的核心优势 **1. 统一管理JAR包** - **节省空间**:Maven通过中央仓库管理所有项目的依赖,避免了重复下载相同JAR包的问题,有效减少了硬盘空间的占用。 - **依赖...

    黑马maven笔记,第一天

    ### 黑马Maven笔记详解 #### Maven简介与特点 Maven是一款强大的项目管理和构建工具,作为Apache基金会下的一个开源项目,它完全采用Java语言编写,主要用于管理Java项目。Maven通过标准化项目构建过程和依赖管理...

    Maven笔记Maven笔记Maven笔记

    Maven的安装: (首先保证JDK版本在1.6以上) 1: 通过配置MAVEN_HOME 和 %% %MAVEN_HOME%\bin 然后进行mvn -version 测试 掌握 -Xms 与 -Xmx的相关配置 2: Maven目录分析: 2.1: bin: 含有mvn运行的脚本 2.2...

    Maven笔记.pdf

    ### Maven核心知识点解析 #### Maven概述与价值 Maven是一个项目管理和综合工具,主要用于Java项目的构建、依赖管理和项目信息管理。通过Maven,开发者可以轻松地处理项目中的多个痛点问题,提升开发效率。 #####...

    maven笔记:maven-overlay-实战笔记

    【标题】:“maven笔记:maven-overlay-实战笔记” 在 Maven 的世界里,"overlay" 是一个重要的概念,主要用于Web项目的构建和部署。Maven overlay 技术允许你将多个项目的输出“重叠”在一起,形成一个新的项目,...

    maven笔记t-JavaWeb

    【标题】"maven笔记t-JavaWeb"主要聚焦于Java Web开发中Maven的使用,这是一套关于Maven的教程,旨在帮助开发者理解和掌握这个强大的构建工具。Maven是Apache软件基金会的一个项目,它简化了Java项目的构建、管理和...

    maven笔记.zip

    ** Maven 概述 ** Maven 是一个强大的项目管理和构建工具,主要应用于Java项目。它通过提供一套标准化的构建过程,使得项目的...通过学习Maven笔记,开发者可以更好地掌握这一强大的工具,提升项目开发的专业水平。

    maven笔记.docx

    【Maven笔记】 Maven是一个强大的Java项目管理工具,它主要解决了在软件开发过程中遇到的一系列问题,如依赖管理、项目构建以及环境一致性等。通过使用Maven,开发者可以更高效地管理和构建Java项目,避免手动复制...

    Maven笔记(2)-- 构建Java Project 及 Maven命令使用

    **Maven笔记(2)-- 构建Java Project 及 Maven命令使用** Maven是Apache组织开发的一个项目管理和综合工具,主要用于Java项目构建、依赖管理和项目信息管理。它通过一个统一的构建过程,使得项目的构建变得简单且...

    Maven笔记.docx

    **Maven笔记** Maven是Apache组织开发的一款Java项目管理工具,它的主要功能包括项目构建、依赖管理和仓库管理。Maven使得Java开发更加规范和高效,尤其在大型团队协作中,能够有效地解决版本冲突和自动化构建的...

    尚硅谷Maven课程笔记代码资源

    【尚硅谷Maven课程笔记代码资源】是一份全面学习Maven的资料集合,它涵盖了从基础到高级的各种知识点,旨在帮助开发者深入理解并熟练运用Maven进行自动化构建。该资源包含课件、源码和相关的笔记,使得学习过程更加...

    Maven笔记与资料.zip

    压缩包中的"笔记"和"资料"文件可能包含更深入的Maven教程、最佳实践、常见问题解答和案例研究等内容。学习这些资料有助于提升你在实际项目中的Maven应用能力,解决遇到的问题,并优化构建流程。 综上所述,Maven是...

    maven学习笔记maven学习笔记

    maven学习笔记maven学习笔记maven学习笔记

    maven笔记+教案

    ** Maven详解:构建Java项目的专业工具 ** Maven是一个基于项目对象模型(Project Object Model,POM)的概念,用于管理并构建Java项目。它通过一个简单的配置文件(pom.xml),自动化项目的构建、报告和依赖管理,...

    Maven笔记,内包含Maven核心程序解压和配置,命令行环境,IDEA环境,jar包3下载失败问题的解决方案

    Maven笔记,内包含Maven核心程序解压和配置,命令行环境,IDEA环境,jar包3下载失败问题的解决方案

    java-Maven笔记.docx

    Maven 是 Java 项目中一种流行的构建工具,能够帮助开发者更好地管理项目依赖关系、编译、打包和发布。下面是 Maven 的一些知识点: 1. Maven 的必要性:Maven 之所以需要,是因为在没有 Maven 之前,开发者需要...

    Maven笔记1

    【Maven笔记1】—— Maven入门 Maven是一款强大的Java项目管理和构建工具,它解决了传统项目构建中的诸多痛点,使得Java开发变得更加规范和高效。在本文中,我们将深入探讨Maven的基本概念、功能以及如何解决上述...

Global site tag (gtag.js) - Google Analytics