---------------------------------------
博文作者:迦壹
博客标题:win8.1_64bit+eclipse4.4+maven3.2.3+JDK1.8环境搭建
转载声明:可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明,谢谢合作!
---------------------------------------
目录:
1、Maven介绍
1.1、什么是Maven?
1.2、Maven对项目的结构要求
1.3、Maven的常用命令
2、Mahout的官网在哪里?
3、在哪里下载?需要哪些组件的支持?
4、如何安装?
4.1、下载并安装JDK
4.2、配置JAVA环境变量
4.3、下载Maven
4.4、配置Maven环境变量
4.5、修改Maven配置文件settings.xml
4.6、Eclipse4.4安装Maven插件
4.7、修改Eclipse4.4的Maven配置
4.8、用Maven创建一个Hello World
4.9、用Maven创建项目的pom.xml简单介绍
4.10、使用Eclipse打开Maven创建的项目,在控制台输出Hello World
5、扩展阅读
目录:
1、Maven介绍
1.1、什么是Maven?
Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。
1.2、Maven对项目的结构要求
Maven 使用惯例优于配置的原则 。它要求在没有定制之前,所有的项目都有如下的结构:
目录 |
目的 |
${basedir} |
存放 pom.xml和所有的子目录 |
${basedir}/src/main/java |
项目的 java源代码 |
${basedir}/src/main/resources |
项目的资源,比如说 property文件 |
${basedir}/src/test/java |
项目的测试类,比如说 JUnit代码 |
${basedir}/src/test/resources |
测试使用的资源 |
一个 maven 项目在默认情况下会产生 JAR 文件,另外 ,编译后 的 classes 会放在 ${basedir}/target/classes 下面, JAR 文件会放在 ${basedir}/target 下面。
1.3、Maven的常用命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
mvn archetype:create 创建Maven项目 mvn archetype:create -DgroupId=idoall.org -DartifactId=helloworld -DpackageName=idoall.org 创建Maven的普通java项目,在命令行使用Maven Archetype 插件 mvn archetype:generate 创建Maven项目 mvn compile 编译源代码 mvn deploy 发布项目 mvn test -compile 编译测试源代码
mvn test 运行应用程序中的单元测试
mvn site 生成项目相关信息的网站 mvn clean 清除项目目录中的生成结果 mvn package 根据项目生成的jar mvn install 在本地Repository中安装jar
mvn eclipse:eclipse 生成eclipse项目文件 mvn dependency:resolve 打印出已解决依赖的列表 mvn dependency:tree 打印整个依赖树 mvnjetty:run 启动jetty服务 mvntomcat:run 启动tomcat服务 mvn clean package -Dmaven. test .skip= true :清除以前的包后重新打包,跳过测试类
mvn install assembly:assembly 构建装配Maven Assembly 插件是一个用来创建你应用程序特有分发包的插件
mvn clean install 删除再编译
|
2、Mahout的官网在哪里?
3、在哪里下载?需要哪些组件的支持?
Maven3.2.3,点击下载。
Maven的安装需要有JDK的支持,这里我们使用JDK1.8,点击下载。
Eclipse4.4,点击下载。
4、如何安装?
4.1、下载并安装JDK
在第3章节中,找到适合你机器版本的JDK,本文使用的是JDK windows 64bit版本,下载后双击安装,我们安装到D:\toolkit\jdk1.8
4.2、配置JAVA环境变量
右键点击我的电脑->属性->远程设置->高级->环境变量,新CLASSPATH和JAVA_HOME变量,然后编辑Path变量。如下图:
CLASSPATH=D:\toolkit\jdk1.8
JAVA_HOME=D:\toolkit\jdk1.8
Path变量后面加上%JAVA_HOME%\jre\bin;%JAVA_HOME%\bin
验证JDK是否正确安装,新打开1个命令行窗口,输入java -version,如果能够看到如下提示,说明安装成功。
1
2
3
4
|
C:\Users\Administrator>java -version java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26) Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode) |
4.3、下载Maven
参考第3章节的下载地址,下载后解压到D:\toolkit\maven3.2.3中。
4.4、配置Maven环境变量
右键点击我的电脑->属性->远程设置->高级->环境变量,新MAVEN_HOME变量,然后编辑Path变量。如下图:
MAVEN_HOME=D:\toolkit\maven3.2.3
Path变量后面加上%MAVEN_HOME%\bin
验证Maven是否正确安装,新打开1个命令行窗口,输入mvn -version,如果能够看到如下提示,说明安装成功。
1
2
3
4
5
6
7
8
|
C:\Users\Administrator>mvn -version Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-12T04:58:1 0+08:00) Maven home: D:\toolkit\maven3.2.3\bin\.. Java version: 1.8.0_20, vendor: Oracle Corporation Java home: D:\toolkit\jdk1.8\jre Default locale: zh_CN, platform encoding: GBK OS name: "windows 8.1" , version: "6.3" , arch: "amd64" , family: "dos" <br>
|
4.5、修改Maven配置文件settings.xml
在D:\toolkit\maven3.2.3\conf下面,可以看到settings.xml文件,这个就是Maven的配置文件。打开后,修改后的内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<? xml version = "1.0" encoding = "UTF-8" ?>
< settings xmlns = "http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd" >
<!-- 设置Maven仓库的存放位置 --> < localRepository >D:/toolkit/maven3.2.3/repo</ localRepository >
< pluginGroups >
</ pluginGroups >
< proxies >
</ proxies >
< servers >
</ servers >
< mirrors >
</ mirrors >
< profiles >
</ profiles >
</ settings >
|
#关于settings.xml的其他几个配置项简要说明
interactiveMode:如果Maven需要和用户交互以获得输入,则设置成true,反之则应为false。默认为true。
offline:如果不想每次编译,都去查找远程中心库,那就设置为true。当然前提是你已经下载了必须的依赖包。
usePluginRegistry:如果需要让Maven使用文件plugin-registry.xml来管理插件版本,则设为true。默认为false。
proxies: 多个proxy profile配置。当你在其它平台工作时,能方面切换。
servers: 一些需要验证的服务器配置,每个服务器都可以有不同配置。
mirros: 仓库的下载镜像。
profiles: 项目构建的配置信息,这里会有单独说明。
activeProfiles:激活的profile列表,按顺序生效。
pluginGroups: 如果插件groupId未指明,按该列表下的id去查找。
4.6、Eclipse4.4安装Maven插件
#打开Eclipse4.4,在上面的菜单栏,点击Help->Eclipse Marketplace,如下图:
#在浏览器打开:http://www.eclipse.org/m2e/download/,然后同时将install的图标拖动到Eclipse Marketplace中,会弹出一个窗口,点击Confirm,后面就继续下一步,就完成了在线安装的过程。如下图:
#安装完后,会提示让你重启Eclipse,重启后进入初始页面会发现如下变化,同时点击菜单栏的Window->Preferences,也可以看到我们现在有了Maven配置项,如下图:
4.7、修改Eclipse4.4的Maven配置
#配置Eclipse使用我们刚刚安装的Maven,在菜单栏点击Window->Preferences,打开参数配置窗口,点击Mavek->Installations,然后点击右侧的Add,添加我们刚才安装的Maven路径,如下图:
#让Eclipse的Maven插件使用我们自定义的setting.xml文件,在菜单栏点击Window->Preferences,打开参数配置窗口,点击Mavek->User Settings,然后在Global Settings和User Settings中输入:D:\toolkit\maven3.2.3\conf\settings.xml,如下图:
4.8、用Maven创建一个Hello World
注意:如果你是第一次运行 maven,你需要 Internet 连接,因为 maven 需要从网上下载需要的插件。
Archetype 可以理解成项目的模型。 Maven 为我们提供了很多种的项目模型,包括从简单的 Swing 到复杂的 Web 应用。我们选择默认的 maven-archetype-quickstart,编号是439,然后按两次回车。
下面带有2个#号的是我写的注释信息,不是命令,如果你要测试的时候可以删除掉
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
D:\_My_Project\_JAVA>mvn archetype:generate -DgroupId=idoall.org -DartifactId=idoall.org.helloworld -DpackageName=idoall.org -Dversion=1.0-SNAPSHOT ##此处省略一些提示信息 1116: remote -> org.openjdk.jmh:jmh-scala-benchmark-archetype (Generates Scala b enchmarking project, uses JMH bytecode processors) 1117: remote -> org.openjdk.jmh:jmh-simple-benchmark-archetype (Basic archetype for simple JMH-driven benchmark.)
Choose a number or apply filter ( format : [groupId:]artifactId, case sensitive contains): 439:
##下面属性是我们在命令行中用 -D 选项指定的。该选项使用 -Dname=value 的格式。回车确认,就完成了项目的建立 Choose org.apache.maven.archetypes:maven-archetype-quickstart version: 1: 1.0-alpha-1 2: 1.0-alpha-2 3: 1.0-alpha-3 4: 1.0-alpha-4 5: 1.0 6: 1.1 Choose a number: 6: [INFO] Using property: groupId = idoall.org [INFO] Using property: artifactId = idoall.org.helloworld [INFO] Using property: version = 1.0-SNAPSHOT [INFO] Using property: package = idoall.org Confirm properties configuration: groupId: idoall.org artifactId: idoall.org.helloworld version: 1.0-SNAPSHOT package: idoall.org Y: :
[INFO] ---------------------------------------------------------------------------- [INFO] Using following parameters for creating project from Old (1.x) Archetype: maven-archetype-quickstart:1.1
[INFO] ---------------------------------------------------------------------------- [INFO] Parameter: basedir, Value: D:\_My_Project\_JAVA [INFO] Parameter: package, Value: idoall.org [INFO] Parameter: groupId, Value: idoall.org [INFO] Parameter: artifactId, Value: idoall.org.helloworld [INFO] Parameter: packageName, Value: idoall.org [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] project created from Old (1.x) Archetype in dir : D:\_My_Project\_JAVA\ido all.org.helloworld
[INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time : 36.771 s
[INFO] Finished at: 2014-09-11T14:22:28+08:00 [INFO] Final Memory: 14M /155M
[INFO] ------------------------------------------------------------------------ |
#此时,Maven已经在D:\_My_Project\_JAVA\idoall.org.helloworld\src\main\java\idoall\org下,为我们创建了一个app.java文件内容如下 :
1
2
3
4
5
6
7
8
9
10
11
12
|
package idoall.org;
/** * Hello world!
*
*/
public class App
{ public static void main( String[] args )
{
System.out.println( "Hello World!" );
}
} |
#进入到D:\_My_Project\_JAVA\idoall.org.helloworld目录中,使用maven将项目打包成jar文件,当你第一次运行 maven 的时候,它会从网上的 maven 库 (repository) 下载需要的程序,存放在你电脑的本地库 (local repository) 中(我们在4.5章节中设置的路径),所以这个时候你需要有 Internet 连接。我们在1.2章节中已经提到过,maver会把打包后的JAR文件放到 ${basedir}/target 目录下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
D:\_My_Project\_JAVA\idoall.org.helloworld>mvn package [INFO] Scanning for projects...
[INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building idoall.org.helloworld 1.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ Downloading: https: //repo .maven.apache.org /maven2/org/apache/maven/plugins/maven -resources-plugin /2 .6 /maven-resources-plugin-2 .6.pom
Downloaded: https: //repo .maven.apache.org /maven2/org/apache/maven/plugins/maven- resources-plugin /2 .6 /maven-resources-plugin-2 .6.pom (8 KB at 5.4 KB /sec )
Downloading: https: //repo .maven.apache.org /maven2/org/apache/maven/plugins/maven
...... ##此处省略很多下载信息,只列出重要的成功信息,可以看到building成功后的目录 [INFO] Building jar: D:\_My_Project\_JAVA\idoall.org.helloworld\target\idoall.org.helloworld-1.0-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time : 01:51 min
[INFO] Finished at: 2014-09-11T14:29:24+08:00 [INFO] Final Memory: 17M /114M
[INFO] ------------------------------------------------------------------------ |
#运行打包后的idoall.org.helloworld-1.0-SNAPSHOT.jar 如果像下面一样输出”Hello World!“,说明你也和我一样成功了。
1
2
|
D:\_My_Project\_JAVA\idoall.org.helloworld>java - cp target /idoall .org.helloworld -1.0-SNAPSHOT.jar idoall.org.App
Hello World! |
4.9、用Maven创建项目的pom.xml简单介绍
#在使用Maven创建的根目录中有一个pom.xml文件,它是Maven管理项目约定配置文件,与ant中的build.xml类似。我们的配置文件所在位置为:D:\_My_Project\_JAVA\idoall.org.helloworld\pom.xml,内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<? xml version = "1.0" encoding = "utf-8" ?>
< 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/xsd/maven-4.0.0.xsd" >
< modelVersion >4.0.0</ modelVersion >
< groupId >idoall.org</ groupId >
< artifactId >idoall.org.helloworld</ artifactId >
< version >1.0-SNAPSHOT</ version >
< packaging >jar</ packaging >
< name >idoall.org.helloworld</ name >
< url >http://maven.apache.org</ url >
< properties >
< project.build.sourceEncoding >UTF-8</ project.build.sourceEncoding >
</ properties >
< dependencies >
< dependency >
< groupId >junit</ groupId >
< artifactId >junit</ artifactId >
< version >3.8.1</ version >
< scope >test</ scope >
</ dependency >
</ dependencies >
</ project >
|
#其中xml的几个节点表示如下信息,更多配置信息,请参考扩展阅读:
modelVersion:表示model版本,目前固定为4.0.0;
groupId:表示本项目组Id,通常是组织包名,如com.deific.mystudy
artifactId:表示本项目的模块名。(模块编程)如mystudy-maven表示是项目mystudy中的mystudy-maven模块,是有关maven学习的模块。
dependencies:表示本项目所依赖的所有其他项目(或jar包)
dependency:表示本项目依赖的某一个依赖项目
scope:表示这个依赖包的范围,有四个值
1、test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖
2、compile范围指的是编译范围有效,在编译和打包时都会将依赖存储进去
3、provided依赖:在编译和测试的过程有效,最后生成war包时不会加入,诸如:servlet-api,因为servlet-api,tomcat等web服务器已经存在了,如果再打包会冲突
4、runtime在运行的时候依赖,在编译的时候不依赖
4.10、使用Eclipse打开Maven创建的项目,在控制台输出Hello World
#我们先在Eclipse中打开刚才Maven创建的项目,在菜单栏点击File->Import,然后在弹出的窗口中,打开Maven选择exsiting maven project,再在弹出的窗口中点击右面的Browse,选择我们使用Maven生成的目录D:\_My_Project\_JAVA\idoall.org.helloworld,如下图:
#这时,我们可以在Eclipse的项目窗口中看到我们导入的项目,在App.java文件上,单击鼠标右键,选择Run As->Java Application,就可以在控制台窗口,看到我们输出的内容HelloWorld。如下图:
5、扩展阅读
maven3常用POM属性及Settings属性介绍:http://blog.****.net/lgm277531070/article/details/6922645
Maven Settings:http://maven.apache.org/ref/3.2.3/maven-settings/settings.html
Maven pom.xml 配置详解:http://blog.****.net/ithomer/article/details/9332071
POM Reference:http://maven.apache.org/pom.html