Maven-window版 简单使用(apache-maven-3.3.9)

来源:互联网 发布:模块化编程 amd 编辑:程序博客网 时间:2024/05/05 22:12

为什么使用maven?

Maven的用途之一是服务于构建,它是一个异常强大的构建工具,能够帮我们自动化构建过程,从清理、编译、测试到生成报告,再到打包和部署。我们不需要也不应该一遍又一遍地输入命令,一次又一次地点击鼠标,我们要做的是使用Maven配置好项目,然后输入简单的命令(如mvn clean install),Maven会帮我们处理那些烦琐的任务。
Maven是跨平台的,无论是在Windows上,还是在Linux或者Mac上,都可以使用同样的命令。
Java不仅是一门编程语言,还是一个平台,通过JRuby和Jython,我们可以在Java平台上编写和运行Ruby和Python程序。我们也应该认识到,Maven不仅是构建工具,还是一个依赖管理工具和项目信息管理工具。


自己简单理解,maven 的好处是 自动化 ,比如jar包管理 ,部署项目, 这样比手动管理和部署 安全

maven解释

  Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具
    eclispe 也有maven插件。

maven教程

【下载】从http://maven.apache.org/download.cgi下载所需要的版本,笔者使用的是3.0.4版本。下载apache-maven-3.3.9-bin.zip文件。如果需要更高级版本,则下载相应的bin.zip文件。

【解压】解压maven到某一指定目录,例如:D:\。则D:\apache-maven-3.3.9目录下会有bin、conf、lib等文件夹。

【配置】在环境变量中,新建M2_HOME,设置为D:\apache-maven-3.3.9。

修改path变量,在原值之后添加%M2_HOME%bin;。path变量的取值通过分号进行分隔。

保存后大功告成,在命令行输入mvn -v 查看maven是否配置成功


Maven的本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件,这些文件被Maven下载)到本地文件夹。很简单,当你建立一个Maven项目,所有相关文件将被存储在你的Maven本地仓库。

默认情况下,Maven的本地资源库默认为 .m2 目录文件夹:

Unix/Mac OS X – ~/.m2
Windows – C:\Documents and Settings\{your-username}\.m2

通常情况下,可改变默认的 .m2 目录下的默认本地存储库文件夹到其他更有意义的名称,例如, maven-repo

找到 {M2_HOME}\conf\setting.xml, 更新 localRepository 到其它名称。

{M2_HOME}\conf\setting.xml
<settings><!-- localRepository   | The path to the local repository maven will use to store artifacts.   |   | Default: ~/.m2/repository  <localRepository>/path/to/local/repo</localRepository>  --><localRepository>D:\apache-maven\repository</localRepository>
一般不需要改



maven常用命令

常用命令为 :

    mvn archetype:create :创建 Maven 项目

    mvn compile :编译源代码

    mvn test-compile :编译测试代码

    mvn test : 运行应用程序中的单元测试

    mvn site : 生成项目相关信息的网站

    mvn clean :清除目标目录中的生成结果

    mvn package : 依据项目生成 jar 文件

    mvn install :在本地 Repository 中安装 jar

    mvn deploy:将jar包发布到远程仓库

    mvn eclipse:eclipse :生成 Eclipse 项目文件

    mvn dependency:resolve:打印项目依赖列表

    mvn dependency:tree :以树形结构展现依赖列表


  1. 项目部署

生成项目

打开命令提示符,  cd 到你的项目目录  如 D:\project

   建一个 Java 项目 : mvn archetype:create -DgroupId=com.test -DartifactId=App

   建一个 web 项目 :mvn archetype:generate -DgroupId=com.test -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp -Dversion=1

注意mvn archetype:create  高版本时会出错,所以使用 mvn archetype:generate


执行后 会出现:


   

直接回车
这样项目生成完了,

Maven使用标准的目录结构。用上面的例子中,我们可以了解到以下关键概念

文件夹结构描述truckscontains src folder and pom.xmlsrc/main/webappcontains index.jsp and WEB-INF folder.src/main/webapp/WEB-INFcontains web.xmlsrc/main/resourcesit contains images/properties files .

编译项目:

mvn clean compile 

打包:

mvn clean package

target 目录会生成 war包

war包拷贝到 web服务器的webapp目录下,然后启动Web服务器。可以看效果 hello word  页面。

安装 jar 到本地仓库

mvn install:install-file -Dfile=c:\kaptcha-{version}.jar -DgroupId=com.test -DartifactId=kaptcha -Dversion={version} -Dpackaging=jar
<dependency>      <groupId>com.test</groupId>      <artifactId>kaptcha</artifactId>      <version>2.3</version> </dependency>
转成 eclipse 项目

 mvn eclipse:eclipse

mvn eclipse:eclipse -Dwtpversion=2.0


自动发布到 tomcat 

步骤一:

在tomcat安装目录下找到tomcat-users.xml文件。该文件路径为【tomcat安装根目录】 /conf/

修改文件内容,增加下列内容:

 tomcat 6

Java代码  收藏代码
  1. <role rolename="manager"/>  
  2. <user username="tomcat" password="123456" roles="manager"/>  

 tomcat 7

Java代码  收藏代码
  1. <role rolename="manager-gui"/>
  2. <role rolename="manager-script"/>
  3. <user username="tomcat" password="123456" roles="manager-gui,manager-script"/>  

步骤二:

在你的项目的pom.xml文件中,增加下列<plugin></plugin>中内容:

Java代码  收藏代码
  1. <build>  
  2.        。。。。。  
  3.         <plugins>  <plugin><groupId>org.codehaus.mojo</groupId><artifactId>tomcat-maven-plugin</artifactId><version>1.1</version><configuration><path>/test</path> <url>http://localhost:8080/manager/</url><server>tomcat</server> </configuration> </plugin>
  4.  
  5.         </plugins>  
  6.     </build>  

 其中username和password就是tomcat中配置的username和password。


里面的server需要在maven的配置文件settings.xml里配置如下:

<server><id>tomcat</id><username>admin</username><password>123456</password></server>

 如果是tomcat7,url需要改成http://localhost:8080/manager/text


推荐教程地址:http://www.yiibai.com/maven/maven_web_application.html 


0 0