搜档网
当前位置:搜档网 › Maven构建与使用(1.9)

Maven构建与使用(1.9)

Maven构建与使用(1.9)
Maven构建与使用(1.9)

Maven的构建及使用

目录

一.Maven的下载以及安装 (2)

1.下载最新版本的Maven (2)

2.将zip文件解压缩到任意文件夹,例如E:\apache-maven-3.0.3 (2)

3.配置环境变量: (2)

4.创建C:\user目录下的.m2文件夹 (3)

5.拷贝setting.xml文件 (3)

6.maven的安装完毕。 (3)

二.使用Maven创建简单的java项目 (3)

1.使用mvn archetype:generate创建一个项目 (3)

2.项目创建后的目录结构 (4)

3.打包项目,mvn package: (4)

4.运行打包的jar文件 (4)

5.其他命令 (4)

三.Nexus中央库proxy与本地库的创建与管理 (5)

1.下载安装Nexus (5)

2.添加一个代理仓库 (7)

3.管理本地Maven仓库 (7)

4.管理Maven仓库组 (8)

四.配置本地Maven使用本地Nexus (9)

五.部署构件至Nexus (10)

1.UI直接上传 (11)

2.配置Maven部署构件 (11)

六.在Eclipse中安装Maven插件 (13)

1.安装m2eclipse (13)

2.在eclipse中新建一个Maven项目 (14)

七. 将maven项目转化为Web项目 (18)

八.定制自己的archetype (21)

1.创建自己的项目 (21)

2.将archetype plugin 添加到pom.xml中的标签中 (22)

3.在cmd中进入项目所在目录 (22)

4.将该archetype部署到中心库 (22)

5.使用自定义的archetype定制项目 (22)

九.下载创建项目结构 (23)

1.首先安装maven到本地,步骤见一。 (23)

2.将.m2文件夹下的setting.xml文件里面添加如下代码: (23)

3. 创建项目 (25)

4. 导入eclipse (25)

编写者:高运一.Maven的下载以及安装

1.下载最新版本的Maven

下载地址:https://www.sodocs.net/doc/0217961622.html,/download.html

2.将zip文件解压缩到任意文件夹,例如E:\apache-maven-

3.0.3

3.配置环境变量:

Windows下在命令行输入(以第二步的目录为例):

set M2_HOME=e:\apache-maven-3.0.3

set PATH=%PATH%;%M2_HOME%\bin

或者使用图形用户界面进行修改环境变量。

在命令行中输入mvn –v(查看Maven的版本信息)来检查是否安装成功

4.创建C:\user目录下的.m2文件夹

在命令行输入mvn help:system,系统将会自动从库中载入信息,在C:\user目录下生成.m2文件夹,默认情况下,该文件夹下放置了Maven本地仓库.m2/repository。所有的Maven构件(artifact)都被存储到该仓库中,以方便重用。

5.拷贝setting.xml文件

将maven安装目录下的conf文件夹(例:E:\apache-maven-3.0.3\conf)中的settings.xml文件拷贝一份到.m2文件夹下,这样以后项目配置只需在.m2下的settings.xml中配置即可。

6.maven的安装完毕。

二.使用Maven创建简单的java项目1.使用mvn archetype:generate创建一个项目

使用命令行,创建过程中命令行信息会提示你要输入groupId(组织Id,例:https://www.sodocs.net/doc/0217961622.html,)和artifactId(项目名称,例:helloworld),其他信息使用系统默认的即可。

或者也可以直接用mvn archetype:create创建一个项目,例如:

mvn archetype:create -DgroupId=com.essymorse -DartifactId=zhangsan 2.项目创建后的目录结构

项目构建文件:pom.xml

代码框架:src\main\java\essymorse\com\App.java

测试代码:src\test\java\essymorse\com\AppT est.java

3.打包项目,mvn package:

生成target目录

编译源代码

编译测试代码

使用junit测试并生成的测试报告

生成代码的jar文件

4.运行打包的jar文件

Java –cp target\helloworld-1.0-SNAPSHOT.jar https://www.sodocs.net/doc/0217961622.html,.App

5.其他命令

a)mvn compile编译源程序

b)mvn test 编译并测试

c)mvn clean清空生成的文件

d)mvn eclipse:eclipse将maven项目转化为eclipse项目,经过此操作以后,

就可以从eclipse中直接导入该项目

三.Nexus中央库proxy与本地库的创建与管理

1.下载安装Nexus

下载地址:https://www.sodocs.net/doc/0217961622.html,/downloads/

两种安装方式:

1)内嵌Jetty的bundle,只需要有JRE就能直接运行;

2)将其发布到web容器中即可使用

这里介绍第一种bundle,

i.将下载的安装文件解压缩至任意目录,例如:E:\Nexus,

ii.接着在命令行中进入到目录:

E:\Nexus\nexus-oss-webapp-1.9.2.3\bin\jsw\windows-x86-32 iii.如果是第一次运行,首先运行Installnexus.bat批处理程序,将其安装为Windows服务,然后运行Startnexus.bat批处理程序,启动Nexus服务器。,

接着打开http://127.0.0.1:8081/nexus进入Nexus的管理主页,如图:

iv.在右上角登录,用户名/密码:admin/admin123

v.登录后点击左侧导航栏中的Repositories进入如下界面:

vi.主面板中会展示所有仓库以及仓库组的列表,主要关注三个类型

1.Hosted:本地仓库,通常我们会部署自己的构件到这一类型的仓库。

2.Proxy:代理仓库,它们被用来代理远程的公共仓库,如maven中央仓

库。

3.Group:仓库组,用来合并多个hosted/proxy仓库,通常我们配置

maven依赖仓库组。

vii.接下来配置Maven Center,Apache Snapshots和CodeHaus Snapshots ,我们只需要做一些配置即可,

1.依次选中Maven Center(Apache Snapshots/CodeHaus Snapshots)

2.点击Configuration进行配置

3.将;“Download Remote Indexes”(指是否下载远程索引文件)的选

项改为“True”然后点击“save”。如图:

viii.这样当本地操作使用到相应库的时候,便会将其下载到本地。

2.添加一个代理仓库

a)在Repositories面板的上方,点击Add,然后选择Proxy Repository

b)在下方的配置部分,我们填写如下的信息:Repository ID - sonatype;

Repository Name - Sonatype Repository;Remote Storage Location -

https://www.sodocs.net/doc/0217961622.html,/content/groups/public/。其余的保持默

认值,需要注意的是Repository Policy,我们不想代理snapshot构件,原

因前面已经描述。然后点击Save。

3.管理本地Maven仓库

Nexus预定义了3个本地仓库,分别为Releases,Snapshots,3rd Party这

三个仓库都有各自明确的目的。Releases用于部署我们自己的release构件,Snapshots用于部署我们自己的snapshot构件,而3rd Party用于部署第三方构件,有些构件如Oracle的JDBC驱动,我们不能从公共仓库下载到,我们就需要将其部署到自己的仓库中。

创建自己的本地仓库的步骤和上面添加一个代理仓库是类似的。

4.管理Maven仓库组

Nexus中仓库组的概念是Maven没有的,在Maven看来,不管你是hosted 也好,proxy也好,或者group也好,对我都是一样的,我只管根据groupId,artifactId,version等信息向你要构件。为了方便Maven的配置,Nexus能够将多个仓库,hosted或者proxy合并成一个group,这样,Maven只需要依赖于一个group,便能使用所有该group包含的仓库的内容。

点击仓库列表中的“Public Repositories”,然后选择下方的"Configuration" T ab,在配置面板中,将右边的目标仓库拖拽到左边的“Ordered Group Repository”中,即可将该仓库加入仓库组。

四.配置本地Maven使用本地Nexus 默认情况下,Maven依赖于中央仓库,这是为了能让Maven开箱即用,但仅仅这么做明显是错误的,这会造成大量的时间及带宽的浪费。现在我们就要配置Maven 来使用本地的Nexus,以节省时间和带宽资源。

我们可以将Repository配置到POM中,但一般来说这不是很好的做法,原因很简单,你需要为所有的Maven项目重复该配置。因此,这里我将Repository的配置放到$user_home/.m2/settings.xml中:

首先设置镜像:

镜像的目的使得新的url覆盖原来的url,这样以后就会直接从新url获取数据。

接下来配置:

由于我们不能直接在settings.xml中插入元素,这里我们编写了一个profile,并添加了一个profile并使用元素自动将这个profile激活。这里的local-nexus仓库指向了刚才我们配置的Nexus中“Public Repositories”仓库组,也就是说,所有该仓库组包含的仓库都能供我们使用。此外,我们通过

元素激活了Maven对于仓库所有类型构件下载的支持,当然你也可以调节该配置,比如说禁止Maven从Nexus下载snapshot构件。

五.部署构件至Nexus

Nexus提供了两种方式来部署构件,你可以从UI直接上传,也可以配置Maven 部署构件。

1.UI直接上传

有时候有个jar文件你无法从公共Maven仓库找到,但是你能从其它得到这个jar文件(甚至是POM),那么你完全可以将这个文件部署到Nexus 中,使其成为标准流程的一部分。步骤如下:

点击左边导航栏的"Repository",在右边的仓库列表中选择一个仓库,如“3rd Party”,然后会看到页面下方有四个tab,选择最后一个“Artifact Upload”,你会看到构件上传界面。选择你要上传的构件,并指定POM,(或者手工编写GAV(包括Group, Artifact, Version and Packaging 信息)等信息),最后点击Upload,该构件就直接被部署到了Nexus的"3rd Party"仓库中。

2.配置Maven部署构件

团队在开发一个项目的各个模块,为了让自己开发的模块能够快速让其他人使用,你会想要将snapshot版本的构件部署到Maven仓库中,其他人只需要在POM添加一个对于你开发模块的依赖,就能随时拿到最

新的snapshot。

Pom.xml

Settings.xml

这里我们配置所有的snapshot版本构件部署到Nexus的Snapshots仓库中,所有的release构件部署到Nexus的Releases仓库中。由于部署需要登陆,因为我们在settings.xml中配置对应Repository id的用户名和密码。

然后,在项目目录中执行mvn deploy,你会看到maven将项目构件部署到Nexus 中,浏览Nexus对应的仓库,就可以看到刚才部署的构件。当其他人构建其项目时,Maven 就会从Nexus寻找依赖并下载。

部署进Nexus的项目文件:jar文件,pom文件(也是metadata的一

种),maven-metadata.xml(解释网站:https://www.sodocs.net/doc/0217961622.html,/topic/761338)以及3个文件的加密文件md5,sha1

六.在Eclipse中安装Maven插件

1. 安装m2eclipse

首先,先要安装gef插件和Subclipse插件,然后才能安装m2eclipse插件,步骤如下:

(1)安装gef插件:

(2)安装Subclipse插件

(3)安装m2eclipse插件:

安装m2eclipse-core插件(依赖gef插件)

安装m2eclipse-extras插件(依赖Subclipse插件)

注意:

(1)必须两个插件都安装,不安装extras插件时,点击“run as server”来运行项目时会报错:“the selected did not contain any resources that can run on server maven project”

(2)安装完之后,还要在eclipse.ini文件中作如下修改:

在–vmargs之前加上dir/ Java/jdk1.6.0_10/bin/javaw.exe 之后启动eclipse才能正常运行。

2. 在eclipse中新建一个Maven项目

(1)File -> new others,选择“Maven Project”

(2)选择项目存放位置

(3)选择Archetype

(4)输入Group Id、Artifact Id 、Version and Package

package等操作。以下是项目目录:

(6)部署到本地Nexus

在pom文件中添加如下代码:

在命令行中,进入项目根目录,输入mvn deploy,即可将项目部署到Nexus中。

(7)添加项目依赖

选中项目pom文件右击选择“Maven” “Add Dependency”

此处选择我自己deploy到Nexus的一个项目,如图:

添加成功后,pom文件里面会自动增加一下代码:

依赖添加成功。

七. 将maven项目转化为Web项目

1.按照上面讲到的方法在eclipse中创建一个新的web项目

2.添加3个“Source Folder”,分别是“src/main/java”,

“src/test/java, ”src/test/resources”,如图:

3.右击项目进入”Build Path”,在“Source”标签下,双击每个文件夹的Output

Folder。“src/main/java”,和“src/main/resources”选择”target/classes”,

“src/test/java, ”src/test/resources”选择“target/test-classes”。同时注意JRE System Library要选择1.6版本。

3. 将项目变成Dynamic Web项目:

在Properties中选择”project Facets”,点击“Convert to faceted form”,进行下图的配置:(选中“Dynamic Web Module”并选择2.5版本)

4.设置部署程序集

选择Properties中的“Deployment Assembly”;

删除两个test类型的文件夹,因为test不需要部署;

设置将Maven的jar包发布到lib下:

Add→Java Build Path Entries→Maven Dependencies→Finish

使用Eclipse构建Maven的SpringMVC项目

使用Eclipse构建Maven的SpringMVC 项目 首先Eclipse需要安装Maven的插件,地址:https://www.sodocs.net/doc/0217961622.html,/sites/m2e。 用MyEclipse安装Maven插件,建出的Maven项目有些问题。一是,发布tomcat的时候resources总是不会被发布到tomcat下;二是,把WEB-INF下的classes改到target下的classes,但是不知道为什么MyEclipse要么仍然在WEB-INF下生成class。要么真不在WEB-INF生成classes 了但是发布tomcat的时候,class文件一个都不会给你发布过去,超级郁闷。但是使用Eclipse构建Maven项目后,使用MyEclipse打开就没问题了。 用maven的好处:我感觉最主要就是自动下载jar包和它所依赖的包,这样可以保证了多人开发时jar版本不同的问题。再就是文件结构清晰,java文件,资源文件,测试文件都分的很清楚。 将介绍两种方法:一,直接建立Maven项目方法;二、建立Dynamic Web project转成Maven 项目方法。 1,建立Maven项目 接下来使用Eclipse的maven构建一个web项目,以构建SpringMVC项目为例: 1.1 选择建立Maven Project 选择File -> New -> Other,在New窗口中选择Maven -> Maven Project。点击newxt。

1.2 选择项目路径 Use default Workspace location默认工作空间。

如何查找maven库的jar包

将开源项目的jar包导入maven形成独立项目 注:MAVEN仓库找jar包: 1,https://www.sodocs.net/doc/0217961622.html, 2,https://www.sodocs.net/doc/0217961622.html, 1,将“F:\share\开发框架\JFinal:WEB_ORM开发框架\JFinal官网\jfinal-1.8-bin-with-src.jar”这个jar包,解压到一个按maven项目建立的文件夹(D:\EclipseWorkspace\jfinal_bin_src\src\main\java)(如下图),删除文件夹下所有.class文件 2,在eclipse(luna)中导入上一步解压后的文件夹“D:\EclipseWorkspace\jfinal_bin_src”

3,如上图所示,多个java文件出现,import导入错误;如下图所示,输入import报错对应信息对应的jar包相关包内容,找到类似的包,如下图加红色圈标识,按“pom”链接

4,上一步“pom”链接打开,看下两图所示,复制前面maven的依赖相关代码,并拷贝到文本文档

5,在eclipse中打开(或新建)jfinal_bin_src/pom.xml,选择文件编辑区下方的“Dependencies”标签,再按“Add”按钮,如下图所示,从上一步的文本文件中复制Group Id等信息,并按

(注意,如果是有parent和model并存的,一般选择parent部分的Group Id和Version,“ok”。 选择model部分的Artifact Id) 6,如果上步输入的包依赖信息有错,则出现下图提示没有找到包

Maven学习总结——使用Maven构建多模块项目

Maven学习总结(八)——使用Maven构建多模块项目 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为domain(域模型层)、dao(数据库访问层)、service(业务逻辑层)、web(表现层),这样分层之后,各个层之间的职责会比较明确,后期维护起来也相对比较容易,今天我们就是使用Maven来构建以上的各个层。 项目结构如下: system-parent |----pom.xml |----system-domain |----pom.xml |----system-dao |----pom.xml |----system-service |----pom.xml |----system-web |----pom.xml 一、创建system-parent项目 创建system-parent,用来给各个子模块继承。 进入命令行,输入以下命令: mvnarchetype:create -DgroupId=me.gacl -DartifactId=system-parent -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false 如下图所示: 命令执行完成之后可以看到在当前目录(C:\Documents and Settings\Administrator)生成了system-parent目录,里面有一个src目录和一个pom.xml文件,如下图所示: 将src文件夹删除,然后修改pom.xml文件,将jar修改为pom,pom表示它是一个被继承的模块,修改后的内容如下: 1 3 4.0.0 4 5 me.gacl

Nexus仓库管理

Nexus仓库管理

管理仓库 为了管理Nexus仓库,以administrative用户登陆进Neuxs,然后点击Nexus 菜单左手边的Views/Repositories菜单中的Repositories。 Nexus提供了三种不同种类的仓库: ●Proxy Repositories ●Hostedrepositories ●Virtual repositories 1.代理仓库(Proxy Repository) 代理仓库是一个远程仓库的代理。默认的,Nexus附带下面已经配置的代理仓库: Apache Snapshots 这个仓库包含来ApacheSoftware Foundation发布的快照。 Codehaus Snapshots 这个仓库包含来Codehaus发布的快照。 Central 这是中央仓库包含发布组件。前身为Maven Central,它是Apache Maven默认的内置仓库,并且直接支持其它的构造工具,如Gradle, SBT或Ant/Ivy。Nexus通过HTTPS使用https://https://www.sodocs.net/doc/0217961622.html,/maven2/链接连接中央仓库。 2.宿主仓库(Hosted Repository) 主要用于部署无法从公共仓库获取的构件(如 oracle 的 JDBC 驱动)以及自己或第三方的项目构件。Nexus附带下面已经配置的宿主仓库: 3rd Party 这里存放的是某些在公共的Maven仓库中不存在的库,但依赖于第三方的仓库。这些依赖库可以是商业的,私有的库,例如Oracle JDBC驱动。 Releases

是你的组织将要发布的内部版本。这里存放我们自己项目中发布的构建, 通常是Release版本的, 比如我们自己做了一个FTP Server的项目, 生成的构件为ftpserver.war, 我们就可以把这个构建发布到Nexus的Releases本地仓库. 关于符合发布后面会有介绍. Snapshots 是你的组织将要发布的内部块状。这个仓库非常的有用, 它的目的是让我们可以发布那些非release版本, 非稳定版本, 比如我们在trunk下开发一个项目,在正式release之前你可能需要临时发布一个版本给你的同伴使用, 因为你的同伴正在依赖你的模块开发, 那么这个时候我们就可以发布Snapshot版本到 这个仓库, 你的同伴就可以通过简单的命令来获取和使用这个临时版本. 2.虚拟仓库(Virtual Repository) Virutual repository作为不同类型仓库的适配器。当前,Nexus支持转换Maven 1仓库和Maven 2仓库。另外,你可以公开任何仓库格式为NuGet或OBR 仓库。例如,Maven 2仓库可以包含OSGi Bundles。a Maven 2 repository can contain OSGi Bundles, which can be exposed as a OSGi Bundle repository with the virtual repository Provider set to OBR. By default it ships with a Central M1 shadow repository that exposes the Central repository in Maven 1 format. 配置仓库 Repository窗口允许你建立,更新和删除不同的仓库使用Add,Delete和Trash按钮。Refresh按钮更新显示仓库和仓库组列表。正当在Nexus用户界面之行任何的delete操作,Trash按钮允许清空那些已删除组件的备份垃圾文件夹。 默认的,Repository窗口显示仓库配置和管理。在Trash按钮的右边允许切换仓库列表和浏览被Nexus管理的仓库

使用Eclipse构建Maven的Web项目

一、直接建立Maven项目方法 1,建立Maven项目 接下来使用Eclipse的maven构建一个web项目,以构建SpringMVC项目为例:1.1 选择建立Maven Project 选择File -> New -> Other,在New窗口中选择Maven -> Maven Project。点击newxt。 1.2 选择项目路径 Use default Workspace location默认工作空间。

1.3 选择项目类型 在Artifact Id中选择maven-archetype-webapp

1.4 输入Group ID和 Artifact ID,以及Package Group ID一般写大项目名称。Artifact ID是子项目名称。 例如Spring的web包,Group ID:org.springframework,artifactId:spring-web。 Package是默认给你建一个包,不写也可以。

1.5 刚建立好后的文件结构如下图 如果这里显示的内容多,一般是Filters设置的问题。或perspective为JavaEE模式,改成Java模式就可以了。

2,配置项目 接下来就需要更改好多配置了。 2.1 添加Source文件夹 接下来需要添加src/main/java,src/test/java ,src/test/resources三个文件夹。右键项目根目录点击New -> Source Folder, 建出这三个文件夹。注意不是建普通的Folder,而是Source Folder。

Maven配置

maven安装+maven本地仓库配置+maven镜像 1.安装maven前我们电脑上要确保安装了JDK1.6以上的版本 2.下载Maven Maven官网下载地址是https://www.sodocs.net/doc/0217961622.html,/download.html 下载apache-maven-3.2.5后,解压到你想要解压的地方 我本地解压到D:\Program Series\Tools\Apache-maven这个路径下 3.然后在配置maven的环境变量: MAVEN_HOME D:\Program Series\Tools\Apache-maven\3.2.5 PATH %MAVEN_HOME%bin

配置好以后环境变量以后,打开cmd窗口,输入mvn -v,如果出现以下内容就表示安装成功。 4.然后我们给maven添加本地的仓库地址 解压后的maven目录下找到conf目录,其中就会有一个setting.xml文件 我本地的地址是D:\Program Series\Tools\Apache-maven\3.2.5\conf 然后通过编辑器找到第53行,把注释去掉,修改成自己想要设置的本地仓库地址就可以了。我本地设置在maven的安装目录同级目录下 mvn文件夹的名字可以随便取,但是一定要确保设置的仓库地址是有效的地址,因为maven 是不会自动创建这个mvn文件夹的。 5.实验一下刚才做的事情产生作用没有,控制台输入: mvnhelp:system 如果没有任何问题,执行完该命令之后,在D:\maven\repository下面就会多出很多文件,这些文件就是maven从中央仓库下载到本地仓库的文件,maven已经开始为我们工作了。Maven的安装配置和本地仓库地址的配置就已经结束了。 国内较快的maven镜像 国内连接maven官方的仓库更新依赖库,网速一般很慢,收集一些国内快速的maven仓库镜像以备用。 ====================国内OSChina提供的镜像,非常不错=================== CN OSChina Central https://www.sodocs.net/doc/0217961622.html,/content/groups/public/ central ======================================================== OSChina Maven 库使用帮助 ==================其他maven仓库镜像========================== repo2

Maven源配置教程

Maven安装及基本使用 1、安装maven首先到maven官网下载maven安装包, Maven下载地址, 下载apache-maven-3.3.9-bin.zip文件 > 由于当前系统为windows, 所以下载apache-maven-3.3.9-bin.zip文件; 如果您使用的系统为unix类系统请下载apache-maven-3.3.9-bin.tar.gz文件 > > 注: 由于maven是依赖于jdk的, 所以在安装maven前需要提前准备好jdk环境。jdk的安装方式不是本文的重点, 所以本文不进行展开说明了。 右键解压apache-maven-3.3.9-bin.zip文件到当前目录中即可 >如果您使用的为unix环境, 以CentOS为例, 使用以下命令进行解压 tar -zxvf apache-maven-3.3.9-bin.tar.gz 到此maven已经安装完成。 为了之后使用方便,所以需要将maven添加到环境变量中, 配置方式: 右键 "我的电脑" -> 选择 "属性" -> 选择 "高级系统设置" -> 选择 "高级" 标签页 -> 选择 "环境变量" 在新打开的窗口中的"系统变量"中新建变量名为"MAVEN_HOME", 变量值为 maven解压后的路径, 例如: E:-maven-3.3.9 然后编辑环境变量PATH, 在PATH的环境变量值的尾部添加";%MAVEN_HOME%", 一路确认后即添加成功。注: windows中多个环境变量的值需要用";"分隔 unix系统中环境变量的配置方式, 以CentOS为例: 使用以下方式为当前用户添加maven的环境变量打开~/.bashrc文件并在文件末尾添加以下内容 vim ~/.bashrc MAVEN_HOME=/opt/apache-maven-3.3.9 PATH=$PATH:$MAVEN_HOME/bin export MAVEN_HOME PATH 保存并退出, 并使用下面的命令使新添加的环境变量立即生效

通向架构师的道路(第二十三天)maven与ant的奇妙整合

分类:架构师之路 目录(?)[+] CSDN学院讲师招募,诚邀您加入!博客Markdown编辑器上线啦PMBOK第五版精讲视频教程火星人敏捷开发1001问 通向架构师的道路(第二十三天)maven与ant的奇妙整合 2012-11-19 12:0420673人阅读评论(32)收藏举报 ant eclipse Eclipse maven Maven ssh SSH SSh整合 一、前言 我们在《万能框架spring》前四天中都用到了maven,接下去要讲述在SSX这样的架构下我们的“单元测试”是怎 么进行的,但是在此之前我们再来深入入解一下maven,因为我们的单元测试需要用到的是junit+ant+junitreport 这样的组合。而。。。。。。由于我们已经使用了maven,那么我们如何可以延续经典的junit+ant这样的单元测 试的组合呢?其答案就是把maven和ant再进行组合一下。 二、用Maven任务在Ant中使用Maven依赖 Maven的一个重要特性是使用中央仓库,存储依赖和识别应用程序所需的库。Maven2还支持传递依赖 (transitivedependency),这是一个强大的概念,它将用户需要声明的依赖限制到最小程度。Ant不支持“即开 即用”的依赖管理。在Ant项目中,应用程序所需的全部程序库通常都存放在一个项目目录中。 三、使用maven-ant-task 3.1安装maven-ant-task 我们先下载maven-ant-tasks-2.1.3.jar(我也已经上传到了“我的资源”里了); 下载完后把它放到我们的ant的lib目录下; 3.2 打包工程 这是一个传统的没有使用maven依赖库的ant的打包流程,从图上看很清晰,对吧? 在前面说了,ant打包时是需要所有的.jar文件都是事先已经在工程的WebContent/WEB-INF/lib目录下了,这也 是大都数人所熟悉的。 但是Maven打包,就一个包依赖声明文件pom.xml,然后在打包时缺什么jarMaven会自动帮我们去下载,所以说原创:转载: 译文:评论: 个人资料 红肠啃僵尸 访问: 积分: 等级: 排名: 文章搜索 博客专栏 think in java interview 文章:12篇 阅读:126219 架构师修练之道 文章:45篇 阅读:1012191 文章分类 架构师之路 随笔 面经 文章存档 2015年03月 2015年02月 目录视图摘要视图订阅lifetragedy的专栏 吾以吾血荐我中华之IT 登录 | 注册 1212560次 10345 第539名 68篇0篇 0篇1954 条 (36) (1) (12) (1) (3)

(仓库管理)设置Maven组件库仓库

(仓库管理)设置Maven组件库仓库

设置Maven仓库 1. 介绍 Maven是Java开发者中流行的构建工具,Maven的好处之一是可以帮助减少构建应用程序时所依赖的软件构件的副本,Maven建议的方法是将所有软件构件存储于一个叫做repository的远程仓库中。 Maven会从https://www.sodocs.net/doc/0217961622.html,中的公用仓库中同步构件,这个公用仓库下载缓慢、不稳定,并且不包含一些构件的最新版本,而且不能上传团队私有的构件。通过设置内部Maven仓库,团队可以更有好地利用Maven仓库的优势并且克服使用ibiblio上的仓库时的缺点。 本文着眼于Maven仓库工具应提供的一些功能,列出了选择Maven仓库工具的标准,说明了使用Artifactory设置Maven仓库的相关步骤。在Linux和Windows 中设置Maven仓库的过程是相同的,少数不同点在文中已经用高亮显示,本文列出了与这个Maven仓库的使用有关的POM文件的范例,用截图来向用户阐述如何设置Maven仓库,Maven和artifactory配置范例也有列出。 1.1 背景知识 本文假定读者熟悉以下的概念和技术: ●Maven 2 ●J2EE web 服务器部署过程(e.g. 在Tomcat中部署Web应用程序) ●XML 1.2 Maven仓库的目的 Maven仓库的目的是作为团队内所使用的所有软件构件的内部私有构件仓库,将Maven构件(jar和pom)存储到一个专门的Maven仓库比将它们存储到版本控制系统中更有优势,这是因为: ●构件(jar)是二进制文件,不属于版本控制系统,版本控制系统在处理文本文件方面比较好 ●保持较小的版本控制数据库 ●Checkout、update和其他版本控制的操作可以更快 1.3 建立内部私有仓库的优势: ●减少可能的版本冲突 ●减少首次构建时需要的手动干涉

maven心得

maven使用经验与心得整理 概述 日常开发中,我们用到的maven相关功能大概一下几种: 1、管理jar依赖 2、构建项目(打包、编译等) 3、发布项目(共享、上传至服务器、供他人使用) 简单介绍 1、管理依赖 jar一般在pom.xml文件的中配置,以spring core为例,一般格式如下: 其中groupId一般为项目(jar war pom等)的发布机构名称; artifactId为项目名称; version为项目版本; 在项目编译打包的时候,ide会自动到maven仓库去查找相应的jar文件,打包并存放在项目的相应路径下(如web项目的lib目录下) 2、构建项目: 这里所说的构建项目主要指打包、编译、运行测试用例等操作,即maven的生命周期中的打包过程。 最常用的就是compile了,一般项目修改代码以后都要重新编译,然后加载到tomcat中运行调试。 其它的还有clean、package等比较常用的操作,请见详细说明–生命周期部分 3、发布项目: 如果我们写一些通用框架,或者自己封装了一些常见的工具类,想要打包为jar并且供他人使用,那么我们可以通过maven发布到公共仓库(私服)供他人下载依赖使用。 比如每个公司都会有自己的框架,持久层、控制层或者其它功能等。当我们没有使用maven 的时候,我们是直接把别人的jar拷贝到项目的library目录下,而现在我们有了maven就不用自己到处拷贝jar包了,只需要在发布的时候找到别人发布到仓库时候写的groupId artifactId version等信息就能直接添加依赖了,也就是相当于第一步的依赖管理。 4、多模块

eclipse maven 项目没有maven依赖仓库问题解决

eclipse maven 项目没有maven依赖仓库问题解决 之前是没有Maven Dependencies 这个文件夹仓库 解决办法: 添加箭头所指的配置到项目的classpath文件中

maven_构建系统项目的基本流程及程序部署流程

以本机路径为例子 1、打sr.jar包 1.1、进入D:\maventest\srjar 更新sr的源程序代码; 1.2、通过dos进入D:\maventest\srjar ,执行mvn clean 先清除一下上次编译的文件; 1.3、执行mvn package -DartifactId=sr-3. 2.1 命令将新程序打包(sr- 3.2.1 为jar名和版本号); 1.4、执行完成后会在srjar\target下生成sr-3. 2.1.jar 2、打sr.war包 2.1 进入D:\maventest\srwar 更新srwar的源程序代码; 2.2 将上面产生的sr- 3.2.1.jar拷到webapp\WEB-INF\lib下(记得要把sr.jar的上一个版本给删掉,只保留最新的sr.jar); 2.3 通过dos进入D:\maventest\srwar ,执行mvn clean 先清除一下上次编译的文件; 2.4 执行mvn package 命令将新程序打包成war; 2.5 执行完成后会在D:\maventest\srwar\target下生成sr.war 3、打km100survey.war包 3.1 进入D:\maventest\km100surveywar 更新程序 3.2 将 1.1-1.4 生成的sr 的jar包拷贝到public_html\WEB-INF\lib 和D:\km100surveylib 文件夹下(删除同名的sr.jar包); 3.3 修改km100surveywar 中的pom.xml 文件: 3.3.1 找到 sr sr 3.2.1 system d://km100surveylib/sr-3.2.1.jar 将version 设置为新的sr 版本号systemPath 中的jar 改为最新的文件名; 3.4 通过dos进入D:\maventest\km100surveywar ,执行mvn clean 先清除一下上次编译的文件; 3.5 执行mvn package 命令将新程序打包成war; 3.6 执行完成后会在D:\maventest\km100surveywar\target下生成km100survey.war 4、执行完以上步骤后打包就完成了。 5、由于svn上程序的配置文件和服务器上的不同,因此在发布到线上服务器时需要修改一些配置文件。 6、为了管理每次发布的包,在本地的E:\surveyRelease下建立文件夹进行管理,结构参照已有的文件. 补充tomcat发布步骤及注意事项:

通过CXF开发webService接口(soap协议、maven项目)

1. 引入cxf的jar包 pom文件里面直接增加依赖 < dependency> junit junit 4.11 test org.springframework spring- webmvc 4.0.0.RELEASE org.apache.cxf apache-cxf 2.4.3 pom 2. 配置web.xml文件 < web-app xmlns= "https://www.sodocs.net/doc/0217961622.html,/xml/ns/javaee" xmlns:xsi= "https://www.sodocs.net/doc/0217961622.html,/2001/XMLSchema-instance" xsi:schemaLocation= "https://www.sodocs.net/doc/0217961622.html,/xml/ns/javaee https://www.sodocs.net/doc/0217961622.html,/xml/ns/javaee/web-app_3_1.xsd" version= "3.1" > < display-name >Archetype Created Web Application < context-param > contextConfigLocation classpath:config/spring/metadata WebService-spring.xml org.springframework.web.conte xt.ContextLoaderListener

Maven项目开发环境搭建

JDK安装 Maven安装 Eclipse安装 ?Svn插件安装 ?Maven插件安装 JDK安装:版本1.5.0_06(小版本可忽略,建议保持一致) Maven安装:(参见Maven开发手册) 1、下载地址https://www.sodocs.net/doc/0217961622.html,/download.html 2、解压到D盘,D:\maven-3.0 3、在环境变量path中添加D:\maven-3.0\bin路径。 4、在命令行下输入: mvn –version,出现 说明安装正确。 Eclipse安装: 1、下载Eclipse IDE for Java EE Developers(3.6), 地址https://www.sodocs.net/doc/0217961622.html,/downloads/ 2、解压运行eclipse 3、安装svn插件 点击help->Install New Software… 点击Add…

输入插件名称(可任意输入)和插件地址https://www.sodocs.net/doc/0217961622.html,/update_1.6.x 点击OK 勾选列表框中插件,按照提示一直点击next即可安装完成。 4、安装maven插件 同上方法安装maven插件。 M2eclipse 地址:https://www.sodocs.net/doc/0217961622.html,/sites/m2e M2eclipse-extra地址:https://www.sodocs.net/doc/0217961622.html,/sites/m2e-extras 5、Checkout出项目源码; 1)、切换至SVN视图

2)、右键点击空白处:新建->资源库位置,输入大客户项目SVN地址信息 https://192.168.29.9:4443/oss/inms/福富集中网管系统/9_CODE(代码)/Trunk(开发主干)/大客户管理子系统/共通管理/1_trunk 3)、右键点击vcst, 选择Check out as maven project,按照提示直接next, 片刻后即可完成项目源码检出、项目构建。 4)、项目构建过程中需要下载部门maven仓库的jar包,请确认是否有连接权限提示:请确认现场是否有连接公司svn的权限,是否需要vpn key接入。 6、项目结构:

Maven常用命令

一,Maven常用命令: 1. 创建Maven的普通Java项目: 1、mvn archetype:create -DgroupId=packageName -DartifactId=projectName 2、mvn archetype:generate 2. 创建Maven的Web项目: mvn archetype:create -DgroupId=packageName -DartifactId=webappName -DarchetypeArtifactId=maven-archetype-webapp 3. 反向生成 maven 项目的骨架: mvn archetype:generate 4. 编译源代码: mvn compile 5. 编译测试代码: mvn test-compile 6. 运行测试: mvn test 7. 产生site: mvn site 8. 打包: mvn package 9. 在本地Repository中安装jar: mvn install 10. 清除产生的项目: mvn clean 11. 生成eclipse项目: mvn eclipse:eclipse 12. 生成idea项目:

mvn idea:idea 13. 组合使用goal命令,如只打包不测试: mvn -Dtest package 14. 编译测试的内容: mvn test-compile 15. 只打jar包: mvn jar:jar 16. 只测试而不编译,也不测试编译( -skipping 的灵活运用,当然也可以用于其他组合命令): mvn test -skipping compile -skipping test-compile 17. 清除eclipse的一些系统设置: mvn eclipse:clean 18.查看当前项目已被解析的依赖: mvn dependency:list 19.上传到私服: mvn deploy 20. 强制检查更新,由于快照版本的更新策略 mvn clean install-U 21. 源码打包: mvn source:jar 或 mvn source:jar-no-fork mvn compile与mvn install、mvn deploy的区别 1.mvn compile,编译类文件 2.mvn install,包含mvn compile,mvn package,然后上传到本地仓 库 3.mvn deploy,包含mvn install,然后,上传到私服

欧盟云计算项目(RESERVOIR)介绍word版本

欧盟云计算项目(RESERVOIR)介绍 作者:vcloud(中国云计算论坛)

邮箱:tangyong@https://www.sodocs.net/doc/0217961622.html,

本文主要介绍欧盟的一个云计算项目RESERVOIR FP7,既然是研究,那么必然要给出研究的背景,研究的原因以及项目的总体介绍,同时,也将给出该项目所涉及的关键技术,以便更好地进行知识准备和技术积累。以下的内容将分为三个部分: ●研究背景 ●为什么要选择RESERVOIR ●RESERVOIR模型及核心的组件 ●涉及的基本概念 ●涉及的关键技术 ●项目的代码签出和涉及的开发语言 1 研究背景 当前,出现的云计算的范型,如Amazon弹性计算云(EC2),为驻留和部署基于WEB的服务而呈现了一个很有前景的概念性的基础,同时理论上将服务提供商从提供支持这些服务所需的计算资源的职责中释放出来。 云计算提供了很多优点,它允许带有市场领域的专业知识的个人或公司花费很少

的软件开发成本去构建和运行他们的“软件作为服务(SaaS)”,并且不需要管理任何硬件操作。这就帮助降低了软件复杂度和成本,加速到市场的时间并且方便了消费者。 有了云计算,公司能够按照需要(on-demand)从一个虚拟的没有限制的资源池中租用基础设施的资源。这种“付费后使用(pay as you go)”的定价模型按照每单位时间实际使用的资源来收取费用。这样,一个业务可能将优化它的IT投资并提高可用性和可伸缩性。 尽管云计算为服务计算的未来做了很大的承诺,但是,在当前的基础设施中存在许多固有的缺陷: 单一的云提供商的有限的伸缩能力 当前,尽管绝大多数云提供商声称有无限的伸缩能力,但实际上,作出以下的假设是合乎情理的: 随着云计算使用率的增加,即便最大的云提供商也会开始面临伸缩性的问题。 从长远来看,随着云提供商中的在线服务数量日益庞大,而且每个服务总是被巨大的全球客户群访问,那么,伸缩性的问题也许将急剧恶化。

maven创建多模块web项目

实现步骤 创建项目目录 进入“工作空间”目录,创建名为tradework的文件夹,切换至控制台,进入该文件夹。配置模块 生成各个模块 该步骤会依次生成项目的各个模块,但是生成的模块并没有创建依赖,只是最简单的并且符合maven要求的项目结构的模块,关于什么是maven的标准项目结构,可以参考maven 官方文档,或者《maven权威指南》。 #core 模块创建 mvn archetype:create -DgroupId=com.taobao.trade -DartifactId=trade-core #client 模块创建 mvn archetype:create -DgroupId=com.taobao.trade -DartifactId=trade-client #server 模块创建 mvn archetype:create -DgroupId=com.taobao.trade -DartifactId=trade-server -DpackageName=com. taobao.trade -DarchetypeArtifactId=maven-archetype-webapp 配置项目模块

关系。 生成好各个模块之后在tradework根目录下会生成三个目录,每个目录下都会有一个

配置依赖 进入tradework根目录,在pom.xml文件中加入dependencies节点,加入如下内容:

内容如下:

生成Eclipse 项目文件及包引用定义,注意,需确保定义Classpath Variables: M2_REPO,指向本地maven类库目录。 打开Eclipse ,导入工程即可。

设置maven组件库仓库

设置Maven 仓库 1. 介绍 Maven 是Java 开发者中流行的构建工具,Maven 的好处之一是可以帮助减少构建应用程序时所依赖的软件构件的副本,Maven 建议的方法是将所有软件构件存储于一个叫做repository 的远程仓库中。 Maven 会从https://www.sodocs.net/doc/0217961622.html, 中的公用仓库中同步构件,这个公用仓库下载缓慢、不稳定,并且不包含一些构件的最新版本,而且不能上传团队私有的构件。通过设置内部Maven 仓库,团队可以更有好地利用Maven 仓库的优势并且克服使用ibiblio 上的仓库时的缺点。 本文着眼于Maven 仓库工具应提供的一些功能,列出了选择Maven 仓库工具的标准,说明了使用Artifactory 设置Maven 仓库的相关步骤。在Linux 和Windows 中设置Maven 仓库的过程是相同的,少数不同点在文中已经用高亮显示,本文列出了与这个Maven 仓库的使用有关的POM 文件的范例,用截图来向用户阐述如何设置Maven 仓库,Maven 和artifactory 配置范例也有列出。 1.1 背景知识本文假定读者熟悉以下的概念和技术: Maven 2 J2EE web服务器部署过程(e.g.在Tomcat中部署Web应用程序) XML 1.2 Maven 仓库的目的 Maven仓库的目的是作为团队内所使用的所有软件构件的内部私有构件仓库,将Maven构件(jar和pom)存储到一个专门的Maven仓库比将它们存储到 版本控制系统中更有优势,这是因为: 构件(jar)是二进制文件,不属于版本控制系统,版本控制系统在处理文本文件方面比较好 保持较小的版本控制数据库 Checkout、update 和其他版本控制的操作可以更快 1.3 建立内部私有仓库的优势: 减少可能的版本冲突减少首次构建时需要的手动干涉中央仓库包含所有依赖的软件构件,引用单一的中央仓库比引用多个独立的本地库要好使用内部仓库做clean

(精品仓库管理)设置Maven组件库仓库

(精品仓库管理)设置Maven组件库 仓库

设置Maven仓库 1.介绍 Maven是Java开发者中流行的构建工具,Maven的好处之一是可以帮助减少构建应用程序时所依赖的软件构件的副本,Maven建议的方法是将所有软件构件存储于一个叫做repository的远程仓库中。 Maven会从https://www.sodocs.net/doc/0217961622.html,中的公用仓库中同步构件,这个公用仓库下载缓慢、不稳定,并且不包含一些构件的最新版本,而且不能上传团队私有的构件。通过设置内部Maven仓库,团队可以更有好地利用Maven仓库的优势并且克服使用ibiblio上的仓库时的缺点。 本文着眼于Maven仓库工具应提供的一些功能,列出了选择Maven仓库工具的标准,说明了使用Artifactory设置Maven仓库的相关步骤。在Linux和Windows 中设置Maven仓库的过程是相同的,少数不同点在文中已经用高亮显示,本文列出了与这个Maven仓库的使用有关的POM文件的范例,用截图来向用户阐述如何设置Maven仓库,Maven和artifactory配置范例也有列出。 1.1背景知识 本文假定读者熟悉以下的概念和技术: ●Maven2 ●J2EEweb服务器部署过程(e.g.在Tomcat中部署Web应用程序) ●XML 1.2Maven仓库的目的 Maven仓库的目的是作为团队内所使用的所有软件构件的内部私有构件仓库,将Maven构件(jar和pom)存储到一个专门的Maven仓库比将它们存储到版本控制系统中更有优势,这是因为: ●构件(jar)是二进制文件,不属于版本控制系统,版本控制系统在处理文本文件方面比较好 ●保持较小的版本控制数据库 ●Checkout、update和其他版本控制的操作可以更快 1.3建立内部私有仓库的优势: ●减少可能的版本冲突 ●减少首次构建时需要的手动干涉 ●中央仓库包含所有依赖的软件构件,引用单一的中央仓库比引用多个独立的本地库要好 ●使用内部仓库做clean构建时会快些,因为Maven构件是从内部服务器而不是从因特网上的ibiblio服务器获取。 1.4Maven构件库的类型 ●本地仓库——位于开发者的机器,由开发者维护,它从位于‘~home/.m2’目录的‘settings.xml’文件中定义的Maven仓库上同步,如果在pom.xml或 setting.xml文件中没有设置内部私有远程仓库,那么开发者机器上的这个本地仓库就会从https://www.sodocs.net/doc/0217961622.html,上的公用Maven仓库上同步。 ●内部私有远程仓库——这是我们将要设置的仓库,我们将改变maven的pom.xml或settings.xml文件来使用这个库。

相关主题