jetty下载启动配置详解及和maven结合pom配置
- 格式:doc
- 大小:75.50 KB
- 文档页数:6
maven的安装、路径配置、修改库⽂件路径和eclipse中的配置、创建maven⼯程(转)⼀、maven的安装解压apache-maven-3.3.9-bin.zip到⾃⼰的⽂件夹下,解压后路径如:D:\Program\apache-maven-3.3.9。
⼆、路径配置右键“计算机”,选择“属性”,之后点击“⾼级系统设置”,点击“环境变量”,来设置环境变量,有以下系统变量需要配置:新建系统变量 MAVEN_HOME 变量值:D:\Program\apache-maven-3.3.9编辑系统变量 Path 添加变量值: ;%MAVEN_HOME%\bin最后检验配置是否成功:⽤win键+R,来打开命令⾏提⽰符窗⼝,即Dos界⾯,输⼊mvn -version 若出现以下情况说明配置成功三、修改库⽂件路径maven作为⾮常强⼤的⼀个组织和管理⼯具,但是它的默认仓库放在C盘⽂档⽬录下,这样万⼀重装电脑会将下载的jar包全部消除,⽽且永久以后库⽂件积累太多,容易造成电脑缓慢。
对于项⽬来说重新部署虽然不是难事,但是我们可以做到将仓库搬到另⼀个位置,这样就可以⼀劳永逸了。
1、⾸先打开⾃⼰的maven安装⽬录下⾯找到conf⽂件夹,打开settings.xml⽂件使⽤ctrl+f在⽂章中寻找localrepository字样,出现如下所⽰,下⾯将这个标签改为你想要的路径:<localRepository>D:/Program Files/maven_repository/repository</localRepository>创建你在settings.xml中指定真实仓库路径,并将修改后的settings.xml⽂件复制⼀份放在当前的⽬录下(原来的不要删除掉)打开myeclipse点击windows->preferences->maven->User setting下修改user setting选项为:D:\Program Files\apache_maven_repository\settings.xml,并点击update settings。
mavenpom属性详解pom.xml⽂件(实践⽤):<project xmlns="/POM/4.0.0"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/POM/4.0.0 /maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><!--maven2.0必须是这样写,现在是maven2唯⼀⽀持的版本--><!-- groupId: groupId:项⽬或者组织的唯⼀标志,并且配置时⽣成的路径也是由此⽣成,如com.mycompany.app⽣成的相对路径为:/com/mycompany/app --><groupId>asia.banseon</groupId><!-- artifactId: 项⽬的通⽤名称 --><artifactId>banseon-maven2</artifactId><!-- packaging: 打包的机制,如pom, jar, maven-plugin, ejb, war, ear, rar, par --><packaging>jar</packaging><!-- version:项⽬的版本 --><version>1.0-SNAPSHOT</version><!-- 项⽬的名称, Maven 产⽣的⽂档⽤ --><name>banseon-maven</name><!-- 哪个⽹站可以找到这个项⽬,提⽰如果 Maven 资源列表没有,可以直接上该⽹站寻找, Maven 产⽣的⽂档⽤ --><url>/banseon</url><!-- 项⽬的描述, Maven 产⽣的⽂档⽤ --><description>A maven project to study maven.</description><!-- 开发者信息 --><developers><developer><id>HELLO WORLD</id><name>banseon</name><email>banseon@</email><roles><role>Project Manager</role><role>Architect</role></roles><organization>demo</organization><organizationUrl>/banseon</organizationUrl><properties><dept>No</dept></properties><timezone>-5</timezone></developer></developers><!-- 类似 developers --><contributors></contributors><!-- 本项⽬相关 mail list, ⽤于订阅等信息 --><mailingLists><mailingList><name>Demo</name><!-- Link mail --><post>banseon@</post><!-- mail for subscribe the project --><subscribe>banseon@</subscribe><!-- mail for unsubscribe the project --><unsubscribe>banseon@</unsubscribe><archive>http://banseon/demo/dev/</archive></mailingList></mailingLists><!-- 项⽬的问题管理系统(Bugzilla, Jira, Scarab,或任何你喜欢的问题管理系统)的名称和URL,本例为 jira --><issueManagement><system>jira</system><url>/banseon</url></issueManagement><!-- organization information --><organization><name>demo</name><url>/banseon</url></organization><!-- License --><licenses><license><name>Apache 2</name><url>/banseon/LICENSE-2.0.txt</url><distribution>repo</distribution><comments>A business-friendly OSS license</comments></license></licenses><!--- scm(software configuration management)标签允许你配置你的代码库,为Maven web站点和其它插件使⽤。
Maven的配置和使用1、下载和安装maven注:在使用之前,应首先安装JDK。
#可以去共用目录中下载,下载完后解压到指定的目录中,如C:\Program Files\apache-maven-2.2.0#配置环境变量:1)MAVEN_HOME: 你安装的Maven的目录,如C:\Program Files\apache-maven-2.2.0#在Path 中加入%MAVEN_HOME%\bin配置完之后,在命令窗口中使用mvn –version 会出现如下信息此时,maven已经安装配置好了。
2、使用maven来构建项目,从源代码编译成二进制项目文件用maven对项目打包,比如用svn下载项目从svn://10.0.0.58:8000/java/materias/poc/maven/core/,下载到指定的目录,比如放在E:\workspace\java\materias\poc\maven\core目录下项目的结构如下:包括src源代码目录,unit test源码目录,以及配置文件目录resources打开命令窗口,用cd命令转到项目所在的目录下运行mvn compile,假如下现如下的结果,则该命令运行成功。
该命令是用来编译所有的的(java)源文件,编译后生成所有的class文件放在根目录下的target\classes目录下,即如除此之外,maven还有很多其他常用的命令方式,比如:*mvn test-compile //编译测试代码,比如编译test下的源文件,编译后生成的所有的class文件放在根目录下的target\test-classes目录下*mvn test //运行应用程序中的单元测试,比如对以上的项目,测试生成的结果放在根目录下的target\surefire-reports目录下,*mvn clean //清除目标目录中的生成结果delete target,即会清除生成的target目录*mvn package //依据项目生成jar或者war/sar文件,比如对以上的项目,生成的包文件会放在根目录下的target\目录下的core-1.0.jar文件,这里要注意的是运行了mvn package命令以后,对于这之前的操作(包括mvn compile,mvn test-compile,mvn test)命令,都会自动运行*mvn install // 在本地Repository 中安装jar或者war //,即将生成的jar或者war放在本地的Repository 中,这里要说明的是,maven中默认的Repository是在C:\Documents and Settings\(当前系统用户的名称)\.m2\repository目录下,我们也可以人为的将它存放在指定的目录下,步骤是打开maven的安装目录,打开conf\下的settings.xml文件,修改其中的<localRepository>,比如将其修改为中间就是所要指定的目录,如对以上的项目,执行了mvn install项目后,不仅在根目录下生成target\目录,同时还会将生成的jar文件存放到Repository中,即E:/app/m2/repository中*mvn site //生成项目相关信息的网站mvn eclipse:eclipse //生成Eclipse 项目文件及包引用定义,注意,需确保定义Classpath Variables:M2_REPO,指向本地maven类库目录。
Maven1.主题maven&jetty安装及常用命令。
2.摘要Maven2集成Eclipse在线安装Jetty集成Eclipse在线安装3.关键字Maven2、jetty4.作者蒲从帅5.简介该文档主要是为了初级使用者,怎么去在Eclipse里集成maven、jetty进行开发。
一些常用的命令的使用,其他繁琐的命令可以到网上搜索,在此就讲解最基本的。
6.背景该文档主要建造目的是为了给刚进公司的实习生准备的,这里只是提供一些maven和jetty最基本的安装和常用命令,更深入的可自行在网上搜索,入门篇。
7.参考资料《百度文库》8.Maven2集成Eclipse在线安装8.1安装使用Eclipse在线安装的方式:地址输入:/sites/m2e/,列表中打勾勾上后点击Next,一路Next,有License选择Accept,然后等待安装,并重启Eclipse。
如果下载安装特别慢,可以取消,然后重新进入如下界面:点击红色的连接,在出现的窗口中,把所有不必要的勾都去掉:点击确定后重新安装,这样速度就会快很多。
8.2新建工程新建Maven项目,可以在列表中找到Maven Project,也可以在Filter中输入Maven来进行筛选。
输入工程的目录:选择项目的架构类型,JAR程序默认即可,Web程序选择相应的类型:输入项目的基本信息后Finish,GroupId可以输入com.ebridge,ArtifactId为项目名称,Package为项目的基础Package:8.3开发MAVEN项目的开发和普通项目开发一样,JAVA代码在src/main/java下,TestCase在src/test/java下,编写代码时也会实时增量编译。
新增依赖Jar包,可以右键pom.xml,选择Maven->Add Dependency出现如下界面,输入要导入的Jar包的关键字,在下面列表中选择要加入的依赖包,MAVEN会自动下载该Jar包,如果该Jar包还依赖其他包,MAVEN也会自动下载:也可以双击pom.xml,在里面修改,具体操作请Google。
maven运⾏时的配置及命令详解上⾯是指定端⼝运⾏程序的,也可以先指定好,直接在上⾯的地⽅写jettty:run 当然,如果你是在控制台运⾏且安装了maven,直接可以进⼊项⽬的⽂件中:mvn jetty:run就是说,在控制台运⾏只要加上⼀个mvn就ok了源代码格式的包Maven install将项⽬输出构件部署到本地仓库maven最主要的作⽤有两个⽅⾯,⼀个是对jar包的依赖解决功能,⾃⼰管理jar包,另⼀个功能就是项⽬的构建,打包部署。
现在我觉得最重要的还是maven的⽣命周期和插件机制,下⾯就来总结⼀下吧。
mvn install 是将你打好的jar包安装到你的本地库中,⼀般没有设置过是在⽤户⽬录下的 .\下⾯。
mvn package 只是将你的代码打包到输出⽬录,⼀般的是 target下⾯。
eclipse插件,m2eclipse1.maven install相当于maven原⽣的命令: mvn install2.aven build是 m2eclipse这个插件⾃⼰创造的概念,需要你来配置到底需要执⾏什么命令,如下图中的goals输⼊的就是你想执⾏的命令: Goals就是mvn的意思,所以中间不需要加mvn了 Eclipse中maven常⽤的命令 点击Run As就可以发现⼏个Maven的命令: Maven Build: 这个命令⽤于编译Maven⼯程,执⾏命令后会在target⽂件夹中的classes中⽣成对应的class⽂件。
Maven Clean: 删除target⽂件夹,即删除⽣成的package包以及class等⽂件。
Maven Test: 先⾃动进⾏编译,在运⾏所有的测试⽤例。
Maven install: 发布⽣成对应的package包。
注意: 留意上⾯的命令的作⽤,build和test都会⽣成相应的class⽂件。
也就是说,当你新建⼀个maven⼯程,或者clean⼀个maven⼯程后,如果没有使⽤这两个命令,直接针对类进⾏测试,会跑出java.class.notfound的错误。
第1章Maven的客户端安装和配置1.1 在Windows上安装Maven1.1.1 检查JDK安装在安装Maven之前,首先要确认你已经正确安装了JDK。
Maven可以运行在JDK 1.4及以上的版本上。
本书的所有样例都基于JDK 5及以上版本。
打开Windows 的命令行,运行如下的命令来检查你的Java安装:C:\Users\Jet>echo %JAVA_HOME%C:\Users\Jet>java -version结果如图2-1所示:图2-1 Windows中检查Java安装上述命令首先检查环境变量JAVA_HOME是否指向了正确的JDK目录,接着尝试运行java命令。
如果Windows无法执行java命令,或者无法找到JAVA_HOME 环境变量。
你就需要检查Java是否安装了,或者环境变量是否设置正确。
1.1.2 下载Maven请访问Maven的下载页面:/download.html 1.1.3 本地安装将安装文件解压到你指定的目录中,如:D:\apache-maven-3.0.3这里的Maven安装目录是D:\apache-maven-3.0,接着需要设置环境变量,将Maven安装配置到操作系统环境中。
打开系统属性面板(桌面上右键单击“我的电脑”→“属性”),点击高级系统设置,再点击环境变量,在系统变量中新建一个变量,变量名为M2_HOME,变量值为Maven的安装目录D:\apache-maven-3.0。
点击确定,接着在系统变量中找到一个名为Path的变量,在变量值的末尾加上%M2_HOME%\bin;,注意多个值之间需要有分号隔开,然后点击确定。
至此,环境变量设置完成,详细情况如图2-2所示:图2-2 Windows中系统环境变量配置这里需要提一下的是Path环境变量,当我们在cmd中输入命令时,Windows 首先会在当前目录中寻找可执行文件或脚本,如果没有找到,Windows会接着遍历环境变量Path中定义的路径。
Maven部署Jetty服务器pom.xml <project xmlns="/POM/4.0.0" xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/POM/4.0.0 /maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.free</groupId><artifactId>com.free.webservice</artifactId><version>0.0.1-SNAPSHOT</version><!--加载⾃⼰的jetty jar包⽂件--><dependencies><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-server</artifactId><version>9.2.10.v20150310</version></dependency></dependencies><build><finalName>rop-sample</finalName><plugins><!-- jetty插件 --><plugin><groupId>org.mortbay.jetty</groupId><artifactId>maven-jetty-plugin</artifactId><version>6.1.21</version><configuration><!-- 添加这⾏<webDefaultXml>src/main/resources/jetty/webdefault.xml</webDefaultXml> --><!--可以边修改边访问--><!-- <webAppSourceDirectory>src/main/webapp</webAppSourceDirectory> --><scanIntervalSeconds>3</scanIntervalSeconds><contextPath>/</contextPath><connectors><connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"><port>8088</port></connector></connectors></configuration></plugin></plugins></build></project>。
Eclipse + maven + h2数据库 + jetty服务器配置1.安装eclipse最新版本,juno的j2ee,下载地址/downloads/,注意自己的机器是32位还是64位,下载相应的版本2.下载Maven /download.html(直接下载eclipse里的maven插件不行,得有maven环境)这个是maven环境:你用cmd 输入 mvn –version看看有没有环境(就是这样的:)3.然后将maven解压缩到一个目录例如:配置指定目录的环境变量M2_HOME在path里配置M2_HOME的bin目录用;隔开其他变量然后用mvn -version 测试如果成功了测试在cmd下输入命令:mvn –vision 回车eclipse里下载一下插件用market可以搜索到没有svn的装一下svn的插件如果安装svn是出现这个界面,则看自己机子的操作系统版本选择,32位的一般是第一个和最后一个:查看maven视图通过svn checkout项目:完了eclipse 目录里就有三个(那个incometaxexamine的是主程序):import-existing Maven Project:maven开始从网上下载jar:maven的jar可以在Maven Repositories视图里看到:如果有错误在引入maven项目后,执行一下_foundation/bin/install-jar.bat然后在cmd中找到以下路径:D:\workspace\project\incometaxexamine\trunk>输入:mvn org.apache.maven.plugins:maven-antrun-plugin:1.7:run -P REFRESH-D EV-DB回车,系统自动安装并启动h2的DB:最后执行:mvn jetty:run则maven自动下载jetty服务器和依赖并启动最后访问http://localhost:8080/或http://127.0.0.1:8080/或http://自己机子的本地连接IP:8080/访问项目:看到登陆界面就成功了可以配合使用H2数据库官方客户端软件:"h2-setup-2012-11-30.exe" 在出现界面JDBC URL后面输入jdbc:h2:file:~/.h2/projectbase;AUTO_SERVER=TRUE确认就连接到数据库了这个是h2数据库的界面:另附JDK配置:JAVA_HOMED:\Program Files\Java\jdk1.7.0_17PathD:%JAVA_HOME%\bin;CLASSPATHD:%JAVA_HOME%\jre\lib;.;。
Maven是一个流行的项目管理工具,它主要用于Java评台的项目构建、依赖管理和项目报告的生成。
在Maven中,配置是一个非常重要的部分,它决定了项目的构建、打包、部署等行为。
本文将对Maven 的配置进行解析,包括Maven的配置文件、项目的POM文件以及常见的配置项。
一、Maven的配置文件Maven的配置文件包括全局配置文件和用户配置文件。
全局配置文件是指Maven安装目录下的conf目录中的settings.xml文件,它包含了Maven的全局配置信息,例如Maven的本地仓库路径、代理服务器设置、镜像设置等。
用户配置文件是指用户目录下的.m2目录中的settings.xml文件,它包含了用户自定义的配置信息,例如用户的身份认证信息、仓库的设置等。
二、项目的POM文件Maven项目的POM文件是项目的核心配置文件,它包含了项目的基本信息、依赖关系、构建配置等。
POM文件的主要配置包括:1. 项目的基本信息:包括项目的groupId、artifactId、版本号等,这些信息在Maven中用来唯一标识一个项目。
2. 项目的依赖关系:通过dependencies元素可以指定项目的依赖项,包括依赖的groupId、artifactId、版本号等信息。
3. 项目的构建配置:包括项目的源代码目录、资源目录、输出目录等,通过build元素可以指定项目的构建配置信息。
4. 项目的插件配置:Maven通过插件来完成各种构建任务,通过plugins元素可以指定项目所使用的插件及其配置信息。
三、常见的配置项除了全局配置文件和POM文件外,Maven还有一些常见的配置项,这些配置项可以通过命令行参数、环境变量、系统属性等方式进行配置,主要包括:1. 仓库的配置:Maven使用仓库来存储项目的依赖项,通过指定仓库的路径、远程仓库的位置区域等可以进行仓库的配置。
2. 编译插件的配置:Maven使用插件来完成项目的编译任务,通过配置插件的参数可以对编译过程进行定制。
一、直接建立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-webapp1.4 输入Group ID和 Artifact ID,以及PackageGroup 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。
2.2 更改class路径右键项目,Java Build Path -> Source下面应该有4个文件夹。
src/main/java,src/main /resources,src/test/java ,src/test/resources。
双击每个文件夹的Output folder,选择路径。
Jetty的首页地址是/jetty/,点击Downloads进入下载介绍页面,由于Jetty7之后,托管服务有Eclipse接替,所以jetty6.1之前(包含6.1)继续由Codehaus提供下载服务,在该页面的下方有如下信息:版本 Java HTTP Servlet JSP Status NotesJetty-8 eclipse 1.6- HTTP/1.1 RFC2616 3.0 2.2 Development Standardized asyncJetty-7 eclipse 1.5- HTTP/1.1 RFC2616 2.5 2.1 Almost stableorg.eclipse.jettyJetty-6.1 1.4-1.6 HTTP/1.1 RFC2616 2.5 2.1 or 2.0 Stable Async SSL, AJP, cometd, testingJetty-6 1.4-1.5 HTTP/1.1 RFC2616 2.5 2.1 or 2.0 Deprecated Continuations, IOC, NIO, dynamic buffers, smaller, faster, betterJetty-5.1 1.2-1.5 HTTP/1.1 RFC2616 2.4 2.0 Stable J2EE 1.4 Compliance tested, optimizations, geronimo integration.Jetty-5.0 1.2-1.4 HTTP/1.1 RFC2616 2.4 2.0 Deprecated Schema, JettyPlus Jetty-4.2 1.2-1.4 HTTP/1.1 RFC2616 2.3+ 1.2 Mature JettyPlusJetty-4.1 1.2-1.4 HTTP/1.1 RFC2616 2.3 1.2 Deprecated JAXP1.1,AJP13(mod_jk)Jetty-4.0 1.2 HTTP/1.1 RFC2616 2.3 1.2 DeprecatedJetty-3.1 1.2 HTTP/1.1 RFC2068 2.2 1.1 Ancient JMXJetty-3.0 1.2 HTTP/1.1 RFC2068 2.2 1.1 FossilizedJetty-2.4 1.1 HTTP/1.0 RFC1945 2.1 1.0 LegendaryJetty-1.0 1.0 HTTP/1.0 RFC1945 - - Mythical本书讨论的Jetty版本是6.1,也是目前使用最多的稳定版本,我们到/jetty/jetty-6.1.22/下载6.1系列最新的6.1.22版本:jetty-6.1.22-src.zip 16-Nov-2009 23:04 5.7Mjetty-6.1.22.zip 16-Nov-2009 23:10 24M我们下载24M大小的jetty-6.1.22.zip文件,另外一个文件有5M是因为只包含了Jetty源码和实例源码,jetty-6.1.22.zip文件包包含了 api文档,实例代码、jetty源码、发行Jar文件、各操作系统下的启动脚本和其他部分依赖包。
Maven配置文件pom.xml详解什么是POM?POM是项目对象模型(Project Object Model)的简称,它是Maven项目中的文件,使用XML表示,名称叫做pom.xml。
在Maven中,当谈到Project的时候,不仅仅是一堆包含代码的文件。
一个Project往往包含一个配置文件,包括了与开发者有关的,缺陷跟踪系统,组织与许可,项目的URL,项目依赖,以及其他。
它包含了所有与这个项目相关的东西。
事实上,在Maven世界中,project可以什么都没有,甚至没有代码,但是必须包含pom.xml文件。
概览下面是一个POM项目中的pom.xml文件中包含的元素。
注意,其中的modelVersion是4.0.0,这是当前仅有的可以被Maven2&3同时支持的POM版本,它是必须的。
1<project xmlns="/POM/4.0.0"2 xmlns:xsi="/2001/XMLSchema-instance"3 xsi:schemaLocation="/POM/4.0.04 /xsd/maven-4.0.0.xsd">5<modelVersion>4.0.0</modelVersion>67<!-- 基本设置 -->8<groupId>...</groupId>9<artifactId>...</artifactId>10<version>...</version>11<packaging>...</packaging>12<dependencies>...</dependencies>13<parent>...</parent>14<dependencyManagement>...</dependencyManagement>15<modules>...</modules>16<properties>...</properties>1718<!-- 构建过程的设置 -->19<build>...</build>20<reporting>...</reporting>2122<!-- 项目信息设置 -->23<name>...</name>24<description>...</description>25<url>...</url>26<inceptionYear>...</inceptionYear>27<licenses>...</licenses>28<organization>...</organization>29<developers>...</developers>30<contributors>...</contributors>3132<!-- 环境设置 -->33<issueManagement>...</issueManagement>34<ciManagement>...</ciManagement>35<mailingLists>...</mailingLists>36<scm>...</scm>37<prerequisites>...</prerequisites>38<repositories>...</repositories>39<pluginRepositories>...</pluginRepositories>40<distributionManagement>...</distributionManagement> 41<profiles>...</profiles>42</project>基本的设置:POM包含了一个project所需要的所有信息,当然也就包含了构建过程中所需要的插件的配置信息,事实上,这里申明了"who","what",和"where",然而构建生命周期(build lifecycle)s中说的是"when"和"how"。
Maven1.Maven主要功能:构建项目(Builds)文档编制(Documentation)报告(Reporting)依赖管理(Dependencies)配置管理(SCMs)发布管理(Releases)2.Maven基本命令创建Maven目录mvn archetype:create -DgroupId=com.yourCompanyName-DartifactId=yourAppName测试mvn test编译类mvn compile打包mvn package生成Sitemvn site清除mvn clean以上命令都是在command窗口运行的.它们还可以混合运行,如mvn test compile package3.Maven的生命周期及其与之对应的命令:validate:验证工程是否正确,所有需要的资源是否可用。
compile:编译项目的源代码。
test-compile:编译项目测试代码。
test:使用已编译的测试代码,测试已编译的源代码。
package:已发布的格式,如jar,将已编译的源代码打包。
integration-test:在集成测试可以运行的环境中处理和发布包。
verify:运行任何检查,验证包是否有效且达到质量标准。
install:把包安装在本地的repository中,可以被其他工程作为依赖来使用deploy:在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
generate-sources:产生应用需要的任何额外的源代码,如xdoclet。
、4.pom.xml的结构上面就是前次HelloMaven工程的pom.xml文件,我们可以通过修改其中的元素使工程按照我们的意图运行,对于接触Maven的人,主要就是和pom.xml文件在打交道.pom.xml文件基本节点介绍:<project>:文件的根节点.<modelversion>:pom.xml使用的对象模型版本.<groupId>:创建项目的组织或团体的唯一Id.<artifactId>:项目的唯一Id,可视为项目名.<packaging>:打包物的扩展名,一般有JAR,WAR,EAR等<version>:产品的版本号.<name>:项目的显示名,常用于Maven生成的文档。
Maven是一个项目管理工具,用于管理项目的生命周期, 它包含了项目生命周期管理,软件包依赖管理。
软件公司项目采用Maven 的比例在持续增长。
Maven 的配置1. 安装配置Maven:1.1 从Apache网站/ 下载并且解压缩安装Apache Maven下载:apache-maven-3.6.2-bin.zip1.2 配置Maven 的conf文件夹中配置文件settings.xml。
1.3 修改settings.xml,添加镜像服务器设置:需要在外网使用Maven可以尝试使用阿里云提供的Maven镜像服务器。
修改settings.xml文件, 添加阿里云镜像服务器配置信息:镜像服务器URL:/nexus/content/groups/public/完整配置文件: settings.xml使用鼠标右键的链接另存为功能, 保存替换原有Maven配置文件即可.最新版的Eclipse已经内嵌了Mevne插件m2e, 不需要安装Maven插件, 如果不做任何配置, 会自动连接使用maven中央库自然可以使用, 但是中央库在国外, 受到中国防火墙等因素影响其访问速度很慢, 只有连接到国内镜像库才能提高Maven运行速度. 连接到国内镜像库按照如下配置.2.1 打开Eclipse的首选项设置2.2 找到Maven的配置项目2.3 设置Maven的全局配置文件settings.xmlEclipse会自动的使用settings.xml 文件中包含镜像库的URL地址信息, 找到Maven镜像库位置. 如何配置settings.xml文件?2.4 更新配置信息2.5 找到Window菜单2.6 开启Maven的视图, 检查是否已经配置了镜像库Maven功能强大, 可以参与管理软件的整个生命周期. Java软件开发中的jar包管理更是Maven的绝技.1.1 选择菜单创建Maven项目1.2 选择项目目录结构的骨架1.3 输入项目相关信息1.4 Maven jar项目的目录结构因为这个步骤必须连接到Maven服务器获取相关信息, 如果配置和网络有故障则这个步骤就会出现错误! 如果出现错误请使用浏览器检测是否能够访问Maven服务器的URL.阿里云Maven内网镜像库: /nexus/content/groups/public/安装配置Maven Eclipse中Maven的配置2.1 选择菜单创建Maven项目1.2 选择项目目录结构的骨架1.3 输入项目相关信息1.4 Maven war项目的目录结构因为这个步骤必须连接到Maven服务器获取相关信息, 如果配置和网络有故障则这个步骤就会出现错误! 如果出现错误请使用浏览器检测是否能够访问Maven服务器的URL.阿里云Maven内网镜像库: /nexus/content/groups/public/安装配置Maven Eclipse中Maven的配置1.5 创建Web部署描述文件web.xml消除检测错误Eclipse与Maven配合提供了强大的jar组件集成功能.3.1 更新Maven库的索引文件Mavne索引用于搜索jar组件"坐标", 更新索引以后就可以在Eclipse中搜索jar组件"坐标", 但这个功能不是必须的, 使用4. 在线搜索添加Jar 组件"坐标"TTS9 Eclipse工作空间中已经更新过Maven索引, 一般无需更新这个索引, 但是如果更换过Eclipse工作空间, 就需要再次更新Maven索引, 如果无法更新索引, 使用4. 在线搜索添加Jar组件.阿里云Maven 镜像服务器没有提供Mavne索引功能, 无法下载Maven索引! 使用4. 在线搜索添加Jar组件.3.2 打开Maven项目中的pom.xml文件3.3 搜索需要jar组件包"坐标"这个搜索功能是利用3.1 更新Maven库的索引文件的索引完成, 如果没有更新过索引, 这个功能失效!!3.4 搜索结果就是在pom.xml文件中"坐标", 保存pom.xml时候会自动下载jar组件这个搜索功能是利用Maven 仓库服务器完成的, 如果不能连接到Maven仓库服务器, 这是会发生错误!! 如果出现问题请参考: Maven 的配置由于版权的问题, 无法在公共Maven服务器上下载Oracle JDBC Driver 3.5 使用Maven下载的jar组件. 组件保存在本地仓库".m2"文件夹中3.6 如果出现下载故障, 可以在检查Maven仓库正常联通后, 再删除本地仓库".m2"以后"更新Maven 项目"Maven组件坐标可以在Eclipse中搜索, 也可以利用在线工具搜索4.1 达内jar组件"坐标"搜索4.3 搜索结果很多, 选择需要的组件版本, 找到组件"坐标"4.4 将找到组件"坐标" 复制到pom.xml文件中, 保存pom.xml文件时候自动下载jar组件.4.5 下载jar组件自动保存在本地库".m2" 文件夹.。
Maven Jetty Plugin 配置指南(翻译)Jetty 版本信息Jetty7 - 此插件更名为jetty-maven-plugin,以便更符合maven2的协定。
为了在Web 应用做快速应用开发做准备,详见多Web应用源目录。
为了在Jetty里运行一个Web应用,你如果按照Maven默认的做法构造(resources文件存放,${basedir}/src/main/webapp下Classes文件存放在${project.build.outputDirectory}下,web.xml的配置描述${basedir}/src/main/webapp/WEB-INF/web.xml),你不需要配置任何其它东西。
只需输入:mvn jetty:run这将在端口为8080的Jetty服务器上启动你的项目。
Jetty将持续运行,直到插件是明确停止,例如,按下<ctrl-c>,您也可以使用mvn jetty:stop命令。
委托这个插件运行Web应用是非常方便的,因为它可以配置成能定期扫描Web应用的任何改变和自动部署Web应用。
这就可以消除开发周期中编译和部署的步骤从而更加富有成效。
你使用的IDE时对项目做的任何改变,都将直接自动导入到当前运行的web容器里,使您可以立即对其进行测试,立竿见影。
如果不管出于什么原因,你总不能运行一个未组合过的web应用吧,在下文讨论中提到这个插件同样也支持jetty:run-war和jetty:run-exploded命令。
关于其他命令的更多信息请查阅Jetty文档中的mvn jetty:run page、mvnjetty:run-exploded page、mvn jetty:run-war page。
自动执行插件有时候,例如在做集成测试时,你当然希望在测试开始时自动运行你的项目,测试完成时停止,而不只是手动的在命令行执行mvn jetty:run吧。
要做到这一点,你需要为jetty 插件创建几个<execution>脚本,并使用<daemon>true</daemon>配置选项来预防Jetty无限期运行,迫使它只在执行Maven时才运行。
Maven之pom.xml配置⽂件详解此⽂⾮原创,摘⾃:setting.xml主要⽤于配置maven的运⾏环境等⼀系列通⽤的属性,是全局级别的配置⽂件;⽽pom.xml主要描述了项⽬的maven坐标,依赖关系,开发者需要遵循的规则,缺陷管理系统,组织和licenses,以及其他所有的项⽬相关因素,是项⽬级别的配置⽂件。
POM介绍POM是项⽬对象模型(Project Object Model)的简称,它是Maven项⽬中的⽂件,使⽤XML表⽰,名称叫做pom.xml。
作⽤类似ant的build.xml ⽂件,功能更强⼤。
该⽂件⽤于管理:源代码、配置⽂件、开发者的信息和⾓⾊、问题追踪系统、组织信息、项⽬授权、项⽬的url、项⽬的依赖关系等等。
事实上,在Maven世界中,project可以什么都没有,甚⾄没有代码,但是必须包含pom.xml⽂件。
基础配置⼀个典型的pom.xml⽂件配置如下,注意,其中的modelVersion是4.0.0,这是当前仅有的可以被Maven2&3同时⽀持的POM版本,它是必须的。
<project xmlns="/POM/4.0.0" xmlns:xsi="/2001/XMLSchema-instance" xsi:schemaLocation="/POM/4.0.0 /xsd/maven-4.0.0.xsd"><!-- 模型版本。
maven2.0必须是这样写,现在是maven2唯⼀⽀持的版本 --><modelVersion>4.0.0</modelVersion><!-- 公司或者组织的唯⼀标志,并且配置时⽣成的路径也是由此⽣成,如com.winner.trade,maven会将该项⽬打成的jar包放本地路径:/com/winner/trade 含义:组织标识,定义了项⽬属于哪个组,风向标,坐标,或者说若把本项⽬打包 ⽤途:此名称则是本地仓库中的路径,列如:com.winner.trade,在M2_REPO⽬录下,将是: /com/winner/trade⽬录 命名规范:项⽬名称,模块,⼦模块 --><groupId>com.winner.trade</groupId><!-- 本项⽬的唯⼀ID,⼀个groupId下⾯可能多个项⽬,就是靠artifactId来区分的 含义:项⽬名称也可以说你所模块名称,定义当⾯Maven项⽬在组中唯⼀的ID ⽤途:例如:trade-core,在M2_REPO⽬录下,将是:/com/winner/trade/trade-core⽬录 命名规范:唯⼀就好 --><artifactId>trade-core</artifactId><!-- 本项⽬⽬前所处的版本号 含义:项⽬当前的版本号 ⽤途:例如:0.0.1-SNAPSHOT,在M2_REPO⽬录下,将是:/com/winner/trade/trade-core/0.0.1-SNAPSHOT⽬录 --><version>1.0.0-SNAPSHOT</version><!-- 打包的机制,如pom,jar, maven-plugin, ejb, war, ear, rar, par,默认为jar --><packaging>jar</packaging> <!-- 元素声明了⼀个对⽤户更为友好的项⽬名称 --><name>maven</name><!-- 帮助定义构件输出的⼀些附属构件,附属构件与主构件对应,有时候需要加上classifier才能唯⼀的确定该构件 不能直接定义项⽬的classifer,因为附属构件不是项⽬直接默认⽣成的,⽽是由附加的插件帮助⽣成的 --><classifier>...</classifier><!-- 定义本项⽬的依赖关系 --><dependencies><!-- 每个dependency都对应这⼀个jar包 --><dependency><!-- ⼀般情况下,maven是通过groupId、artifactId、version这三个元素值(俗称坐标)来检索该构件, 然后引⼊你的⼯程。
1、jetty下载地址首页/jetty/选择下载版本下载,下载下来之后解压2、我是windows 启动命令java -jar start.jar etc/jetty.xml默认8080 端口访问http://localhost:8080/test/test自带工程出现welcome页面把自己的项目拷贝到D:\jetty-6.1.0\webapps (我的是d 盘,自己的位置自己改下)执行启动命令然后访问制作Jetty bat启动文件@ECHO OFFD:cd D:\jetty-6.1.0echo 启动Jetty...pausejava -jar start.jar etc/jetty.xml3、Jetty服务配置etc\jetty.xml修改访问端口:<Call name="addConnector"><Arg><New class="org.mortbay.jetty.nio.SelectChannelConnector"><Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set><Set name="maxIdleTime">30000</Set><Set name="Acceptors">1</Set><Set name="statsOn">false</Set><Set name="confidentialPort">8443</Set><Set name="lowResourcesConnections">1000</Set><Set name="lowResourcesMaxIdleTime">500</Set></New></Arg></Call>其它配置/blog/601186<?xml version="1.0"?><!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "/configure.dtd"><!-- 配置Server对象,此时会调用org.mortbay.jetty.Server默认构造函数new一个Server --><Configure id="Server" class="org.mortbay.jetty.Server"><!-- =========================================================== --><!-- 配置线程池 --><!-- =========================================================== --><!-- 调用当前Server对象的setThreadPool方法 --><Set name="ThreadPool"><!-- new一个ThreadPool对象,作为setThreadPool方法的参数 --> <New class="org.mortbay.thread.concurrent.ThreadPool"><!-- 设置线程池核心线程数大小 --><Set name="corePoolSize">50</Set><!-- 设置线程池最大线程数 --><Set name="maximumPoolSize">50</Set></New></Set><!-- =========================================================== --><!-- 注册connectors --><!-- =========================================================== --><!-- 调用当前Server对象的addConnector方法 --><Call name="addConnector"><Arg> <!--Arg 标签表示addConnector方法的参数列表--><!--new一个SelectChannelConnector对象--><New class="org.mortbay.jetty.nio.SelectChannelConnector"><!--调用当前SelectChannelConnector对象的setHost方法, host表示Connector需要监听的IP地址或者hostname,SystemProperty标签用来获取Java系统变量。
--><Set name="host"><SystemProperty name="jetty.host"/></Set><!-- 监听端口 --><Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set><!-- 一个连接的最大空闲时间 --><Set name="maxIdleTime">30000</Set><!-- Acceptor线程数量,Accepto的功能是接收客户端连接然后分配个ThreadPool处理--><Set name="Acceptors">2</Set><!-- 是否开启统计功能 --><Set name="statsOn">false</Set><Set name="confidentialPort">8443</Set><!-- 连接数量达到该数值时,Jetty会认为服务器资源已被耗尽 --><Set name="lowResourcesConnections">5000</Set><!-- 当资源饱和时,连接最大等待时间,时间单位是毫秒 --> <Set name="lowResourcesMaxIdleTime">5000</Set></New></Arg></Call><!-- =========================================================== --><!-- 设置Handlers --><!-- =========================================================== --><Set name="handler"><!-- HandlerCollection中每一个Handler都会被按顺序执行 --><New id="Handlers"class="org.mortbay.jetty.handler.HandlerCollection"><Set name="handlers"><Array type="org.mortbay.jetty.Handler"><Item><!-- ContextHandler的集合 --><New id="Contexts"class="org.mortbay.jetty.handler.ContextHandlerCollection"/></Item><Item><!-- DefaultHandler 如果前一Handler没有处理request的话就会执行它。
用来输出提示信息或者输出网站图标 --><New id="DefaultHandler"class="org.mortbay.jetty.handler.DefaultHandler"/></Item><!-- 请求日志记录器 --><Item><New id="RequestLog"class="org.mortbay.jetty.handler.RequestLogHandler"/></Item></Array></Set></New></Set></Configure>=====以上是外部jetty容器中配置=====下面是项目工程中的配置及问题===== 1、jetty跟meven的结合pom.xml中的配置<dependency><groupId>org.mortbay.jetty</groupId><artifactId>jetty</artifactId><version>6.1.22</version><scope>provided</scope></dependency><dependency><groupId>org.mortbay.jetty</groupId><artifactId>jsp-2.1-jetty</artifactId><version>6.1.22</version><scope>provided</scope></dependency><plugin><groupId>org.mortbay.jetty</groupId><artifactId>maven-jetty-plugin</artifactId><version>6.1.22</version><configuration><contextPath>/</contextPath><connectors><connectorimplementation="org.mortbay.jetty.nio.SelectChannelConnector"><port>80</port></connector></connectors><scanIntervalSeconds>10</scanIntervalSeconds></configuration></plugin>2、Jetty代码运行方式public class ServerStart {static String path =Thread.currentThread().getContextClassLoader().getResource("").getPat h();static String subPath = "src/main/webapp";static String etcPath = "etc/webdefault.xml";public static void main(String[] args) throws Exception { System.out.println("正在启动....................");long begin = System.currentTimeMillis();Connector connector = new SelectChannelConnector();connector.setPort(Integer.getInteger("jetty.port",80).intValue());WebAppContext webapp = new WebAppContext(getPath()+subPath, "/");webapp.setDefaultsDescriptor(getPath()+etcPath);Server server = new Server();server.setConnectors(new Connector[] { connector });server.setHandler(webapp);server.start();System.out.println("Jetty Server started”);}private static String getPath(){if(path.indexOf("/") == 0){path = path.substring(1, path.length());}path = path.replace("target/test-classes/", "");return path;}}启动成功3、注意:当启动jetty后修改不了静态html,js后无法保存,无论是在Eclipse里面保存还是在外部都无法保存。