揭开maven2.0面纱

maven2安装配置介绍

Maven2.0的优点
  Maven2.0有许多很好功能,这些功能不仅仅是帮助您构建项目。如果您刚刚开始启动一个Java项目,并且想使该项目快速地开展下去,Maven2.0能够在几分钟内达到您的要求。以下是Maven2.0的一些优点:
  --标准的项目布局和项目结构生成器
  --标准的依赖管理机制
  --多项目支持
  --在开发者需要的时候及时地下载新的插件和功能部件
  --生成最新项目信息的网站
  --集成了源代码控制软件:CVS和Subversion

继续之前你必须安装好java(即本机要安装好jre )。

首先,下载 Maven并把它解压到你要安装的目录,例如:windows 下的C:\\maven 之后,把系统变量 M2_HOME 和变量值 maven安装目录/bin设置到你的系统的环境变量中。然后在系统控制台(windows cmd)或终端(linux)下敲入 mvn –version,如果你安装成功,控制台将打印出你安装的maven的版本号,如:
C:\\Documents and Settings\\Administrator>mvn -version
Maven version: 2.0.6
C:\\Documents and Settings\\Administrator>  

2. 网络设置

maven运行时需要网络环境。如果你的网络需要代理,则要在maven目录的conf/settings.xml中设置。

找到节点,按照例子,根据自己实际环境设置。

创建项目
在命令行中执行以下(Maven 把它叫作goal)命令:
mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-app
如果你是首次运行该(goal)命令,maven将要花一些时间去把最新的工具包(Maven 把它叫作artifacts)下载到你的本地仓库。你也许要执行很多次上面的命令才能成功,因为远程服务器有时可能连接不上或者超时(这种情况很少见,除非是你本地网络没有配置好)。
命令执行完后你将看到maven生成了一个名为my-app的目录,这个名字就是你在命令中指定的artifactId,进入该目录,

项目目录具体如下!


D:\\MY-APP
│ pom.xml

└─src
    ├─main
    │ └─java
    │      └─com
    │          └─mycompany
    │              └─app
    │                      App.java
    │
    └─test
        └─java
            └─com
                └─mycompany
                    └─app
                            AppTest.java
其中,src/main/java 目录包含了项目的源代码,src/test/java 目录包含了项目的测试代码,pom.xml是项目的项目对象模型(Project Object Model or POM)。

常用命令

Maven2 的运行命令为 : mvn ,

常用命令为 :

mvn archetype:create :创建 Maven 项目

mvn compile :编译源代码

mvn test-compile :编译测试代码

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

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

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

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

mvn install :在本地 Repository 中安装 jar

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

生成项目

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

建一个 web 项目 : mvn archetype:create -DgroupId=com.demo -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp

生成 Eclipse 项目

普通 Eclipse 项目执行 : mvn eclipse:eclipse

Eclipse WTP 项目执行 : mvn eclipse:eclipse –Dwtpversion=1.0

( wtp1.0 以上版本均可用)

在 Eclipse 里面 file>import

然后选择 General>Existing Projects into Workspace(如果安装了maven插件这个地方选择maven project,然后下一步找到pom.xml文件)

设置 maven 的路径变量 M2_REPO

Window -> Preferences -> Java -> Build Path -> Classpath Variables

New Name 命名 : M2_REPO

路径 :本地的 maven 类库地址

这里为 C:/Documents and Settings/{ 你的系统登录用户名 }/.m2/repository(自定义设置的仓库:修改.setting.xml文件<localRepository>C:\Java\Tools\apache-maven-2.0.8\M2Repository</localRepository>   并让ide内的setting.xml文件设置指向你得这个文件)

注意事项:
1、Maven默认的remote repository是ibiblio.org,这个地方有些人上不去,因此要更改一下。
Maven找寻配置参数的默认的顺序是从maven.jar中的defaults.properties开始。打开该文件,修改:
maven.repo.remote =     http://apache.linuxforum.net/dist/java-repository, http://dist.codehaus.org, http://mirrors.sunsite.dk/maven/http://public.planetmirror.com/pub/maven, http://www.ibiblio.org/maven

可在以下两个网站查阅:http://mvnrepository.com/,http://repo1.maven.org/maven2/

2、Maven默认的本地文件保存在Document and Setting的user.home里面,非常不便。
在%MAVEN_HOME%下建立一个local目录,将本地的repostiory保存在此,以免重装系统丢失。
maven.home.local = ${maven.home}/local
3、Maven的提示语言在中文环境中可能出现乱码,进入maven.jar,
发现org\apache\maven\messages目录下的messages_zh_CN.properties里面直接写了中文字符。删掉它!就不会乱码了。
(或者用native2ascii转换)

4、Maven中最大的麻烦之处就是不能从Maven存储库中获取Sun的jar文件。这个问题归因于Sun在其代码中设置的许可证限制。解决这个问题的办法有两种,一种是下载这些代码并将它们安装在您本地的存储库中,另一种是做一个外部声明,并将这个声明指向文件系统中依赖项所在的位置。希望Sun能够尽早地创建自己的存储库,尽管如此,Maven也会被升级来使之能够下载这些资源,只是在下载之前它会提示用户接受许可证协议。

5、另外一个麻烦的地方就是有时候使用的最新的库文件可能在远程存储库中不存在。另一种可能是由于无法访问Internet,需要所有的依赖项都能在本地获取。这些问题的最好解决方案就是将jar文件安装到本地的存储库中。将本地的存储库放在一台web服务器上也同样是个便利之举,这样整个开发团队就能从此获益,每个人都没有必要去管理自己的存储库了。改变Maven的存储库路径只需简单地编辑其安装目录下conf文件夹下面的settings.xml文件即可。

IDE下的问题

1. 当 M2eclipse 插件装上之后,会报这个错

Eclipse is running in a JRE, but a JDK is required

Some Maven plugins may not work when importing projects or updating source folders.

解决办法 :查看 eclipse\readme\readme_eclipse.html 里面有详细说明,在 Selecting a workspace 这一节

创建一个快捷方式,设定目标位置为 D:\eclipse_jee\eclipse.exe -vm D:\Java\jdk1.5.0_10\bin\javaw

因为默认 vm 为 jdk\jre\bin\javaw ,直接改到 jdk 下,错误即可消除

2. 使用命令 mvn eclipse:eclipse –Dwtpversion=1.0 之后,导入的项目 Project Facet 的 java 还是 1.4 ,而我 Eclipse 上设置的是 5.0

解决办法 :在 pom.xml 中 plugins 加入说明就可以了

Xml代码

  1. <plugins>
  2. <plugin>
  3. <artifactId>maven-compiler-plugin</artifactId>
  4. <configuration>
  5. <source>1.5</source>
  6. <target>1.5</target>
  7. </configuration>
  8. </plugin>
  9. </plugins>
<plugins>         <plugin>            <artifactId>maven-compiler-plugin</artifactId>            <configuration>                <source>1.5</source>                <target>1.5</target>            </configuration>         </plugin> </plugins>

3.   在使用命令mvn eclipse:eclipse 之后,import到Eclipse,然后在Eclipse项目上点右键,选择插件Maven>Enable Dependency Management后,会报重复引用依赖的错误
解决办法 :再执行mvn eclipse:eclipse然后刷新Eclipse的项目,取消掉maven插件的引用依赖,错误就会消除

你可能感兴趣的:(eclipse,maven,xml,网络应用,项目管理)