maven学习笔记整理
2014-07-25 17:29
295 查看
mvn archetype:generate -DgroupId=com.mycompany.helloworld -DartifactId=helloworld -Dpackage=com.mycompany.helloworld -Dversion=1.0-SNAPSHOT
maven学习网址:http://blog.csdn.net/rockstar541/article/details/20454067
http://www.cnblogs.com/quanyongan/archive/2013/04/17/3025971.html
http://www.cnblogs.com/haippy/archive/2012/07/04/2576453.html
http://b-l-east.iteye.com/blog/1246482
创建方法,在一个目录下使用命令:mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp。
按照提示输入相应的参数,中间过程如下:
1.D:\study\workspace4>mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp
2.[INFO] Scanning for projects...
3.....
4.[INFO] Generating project in Interactive mode
5.Define value for property 'groupId': : com.xjd
6.Define value for property 'artifactId': : mywebapp
7.Define value for property 'version': 1.0-SNAPSHOT: :
8.Define value for property 'package': com.xjd: :
9.Confirm properties configuration:
10.groupId: com.xjd
11.artifactId: mywebapp
12.version: 1.0-SNAPSHOT
13.package: com.xjd
14. Y: : Y
15.....
16.[INFO] BUILD SUCCESS
17.[INFO] -----------------------------------------
18.[INFO] Total time: 1:46.199s
19.[INFO] Finished at: Wed Nov 09 15:02:18 CST 2011
20.[INFO] Final Memory: 6M/15M
用MyEclipse导入Maven创建的工程:
导入有两种方法这里分步讲解:
1) 使用MyEclipse的普通工程导入,步骤如下:
1> 先打开dos,在工程根目录下(mywebapp)运行: mvn eclipse:eclipse---运行完后会发现在工程目录下多出了两个文件.classpath和.project,
这是eclipse的工程文件,当然myeclipse也识别
2> 在MyEclipse中使用导入功能,选择File-->Import...-->Existing Projects into workspace,选择工程目录,导入即可
3> 关联Maven,导入后的工程只是一个普通java的工程,并不会与maven插件相关连,此时在工程上点击右键-->Maven4MyEclipse-->Enable Dependency Management,
这样,这个工程就与Maven插件关联了(关联后工程根节点左上角上会有一个M的标识)。
2)使用MyEclipse中的Maven工程导入,步骤如下:
1> 在MyEclipse中使用导入功能,选择File-->Import...-->Existing Maven Projects(这里不同),选择工程目录,导入即可。---这里导入进,
MyEclipse可能会联网更新索引,很慢,我们可以取消(在Progress面板中点那个大红框),这时工程导进来了,但是没有执行该有的操作,比如maven的dependcy检查等,
此时进行一下第2步操作。
2> 更新一下工程配置,右键工程-->Maven4MyEclipse-->Update Project Configuration
创建Maven项目及说明 http://zghbwjl.blog.163.com/blog/static/1203366722013523102126127/
Maven坐标:groupId:artifactId:packaging:version
groupId
团体,公司,小组,组织,项目,或者其它团体。团体标识的约定是,
它以创建这个项目的组织名称的逆向域名(reverse domain name)开头。
来自Sonatype的项目有一个以com.sonatype开头的groupId,而Apache Software的项目有以org.apache开头的groupId。
artifactId
在groupId下的表示一个单独项目的唯一标识符。(即eclipse的项目名称)
version
一个项目的特定版本。发布的项目有一个固定的版本标识来指向该项目的某一个特定的版本。而正在开发中的项目可以用一个特殊的标识,
这种标识给版本加上一个“SNAPSHOT”的标记。
packaging
项目的类型,默认是jar,描述了项目打包后的输出。类型为jar的项目产生一个JAR文件,类型为war的项目产生一个web应用。(输入后在elipse没有反映)
Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:2.5
Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:
Failure to transfer org.apache.maven.plugins:maven-plugins:19 from http://repo.maven.apache.org/maven2 was cached in the local repository,resolution will not reattempted until the update interval of central has elapsed or updates are forced.Original
1.找到maven库目录,进入:~\.m2\repository\org\apache\maven\plugins\maven-surefire-plugin\2.7.1
2.若2.7.1目录下只有,"maven-surefire-plugin-2.7.1.pom.lastUpdated" 则需要到http://repo1.maven.org/maven2/org/apache/maven/plugins/maven-surefire-plugin/2.7.1/,把里面的文件下载下来放到2.7.1
3.删除2.7.1下的maven-surefire-plugin-2.7.1.pom.lastUpdated文件。
4.项目右键-->maven-->Update Dependencies
详细的maven的使用可以参照:http://blog.csdn.net/yuguiyang1990/article/details/8797153
myeclispe使用maven进行jar包的管理开发一个servlet项目:
1.参照上面的给出的网址创建一个web项目,是使用maven进行管理的,web项目的结构配置好如下:
2.在pom里面添加包的依赖和属性的配置
3.建立包和写servlet类
package com.wj.demo2;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class UserServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
// super.doPost(req, resp);
req.setCharacterEncoding("utf-8");
resp.setContentType("text/html;charset=utf-8");
String action = req.getParameter("action");
if("login_input".equals(action)){
req.getRequestDispatcher("login.jsp").forward(req , resp);
}else if("login".equals(action)){
String name = req.getParameter("name");
String password = req.getParameter("password");
System.out.println("name->" + name + ",password->" + password);
}
}
}
4.在web.xml里面配置servlet
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>userservlet</servlet-name>
<servlet-class>com.wj.demo2.UserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>userservlet</servlet-name>
<url-pattern>/userservlet</url-pattern>
</servlet-mapping>
</web-app>
5.写jsp文件
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>my first maven test</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<p>大家好!</p>
<h2>hello world.!!你好啊 . </h2><br>
<a href="userservlet?action=login_input">去登录</a>
</body>
</html>
写login.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>登入界面login</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form action="userservlet?action=login" method="post">
Name:<input type="text" name="name" /><br>
Password:<input type="password" name="password" />
<input type="submit" value="登录" />
</form>
</body>
</html>
6.项目的完整结构:
7.发布项目,项目的发布和一般的项目发布一样,启动tomcat服务器
8.访问项目;注意maven的web访问不是http://localhost:8080/项目名,而是http://localhost:8080/+<artifactId>mywebapp</artifactId>里面的内容,比如这里的事mywebapp/*.jsp
9.页面结果
登入成功,后台有数据打印出来,可以查看。
这就是maven来管理servlet的过程
maven学习网址:http://blog.csdn.net/rockstar541/article/details/20454067
http://www.cnblogs.com/quanyongan/archive/2013/04/17/3025971.html
http://www.cnblogs.com/haippy/archive/2012/07/04/2576453.html
http://b-l-east.iteye.com/blog/1246482
创建方法,在一个目录下使用命令:mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp。
按照提示输入相应的参数,中间过程如下:
1.D:\study\workspace4>mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp
2.[INFO] Scanning for projects...
3.....
4.[INFO] Generating project in Interactive mode
5.Define value for property 'groupId': : com.xjd
6.Define value for property 'artifactId': : mywebapp
7.Define value for property 'version': 1.0-SNAPSHOT: :
8.Define value for property 'package': com.xjd: :
9.Confirm properties configuration:
10.groupId: com.xjd
11.artifactId: mywebapp
12.version: 1.0-SNAPSHOT
13.package: com.xjd
14. Y: : Y
15.....
16.[INFO] BUILD SUCCESS
17.[INFO] -----------------------------------------
18.[INFO] Total time: 1:46.199s
19.[INFO] Finished at: Wed Nov 09 15:02:18 CST 2011
20.[INFO] Final Memory: 6M/15M
用MyEclipse导入Maven创建的工程:
导入有两种方法这里分步讲解:
1) 使用MyEclipse的普通工程导入,步骤如下:
1> 先打开dos,在工程根目录下(mywebapp)运行: mvn eclipse:eclipse---运行完后会发现在工程目录下多出了两个文件.classpath和.project,
这是eclipse的工程文件,当然myeclipse也识别
2> 在MyEclipse中使用导入功能,选择File-->Import...-->Existing Projects into workspace,选择工程目录,导入即可
3> 关联Maven,导入后的工程只是一个普通java的工程,并不会与maven插件相关连,此时在工程上点击右键-->Maven4MyEclipse-->Enable Dependency Management,
这样,这个工程就与Maven插件关联了(关联后工程根节点左上角上会有一个M的标识)。
2)使用MyEclipse中的Maven工程导入,步骤如下:
1> 在MyEclipse中使用导入功能,选择File-->Import...-->Existing Maven Projects(这里不同),选择工程目录,导入即可。---这里导入进,
MyEclipse可能会联网更新索引,很慢,我们可以取消(在Progress面板中点那个大红框),这时工程导进来了,但是没有执行该有的操作,比如maven的dependcy检查等,
此时进行一下第2步操作。
2> 更新一下工程配置,右键工程-->Maven4MyEclipse-->Update Project Configuration
创建Maven项目及说明 http://zghbwjl.blog.163.com/blog/static/1203366722013523102126127/
Maven坐标:groupId:artifactId:packaging:version
groupId
团体,公司,小组,组织,项目,或者其它团体。团体标识的约定是,
它以创建这个项目的组织名称的逆向域名(reverse domain name)开头。
来自Sonatype的项目有一个以com.sonatype开头的groupId,而Apache Software的项目有以org.apache开头的groupId。
artifactId
在groupId下的表示一个单独项目的唯一标识符。(即eclipse的项目名称)
version
一个项目的特定版本。发布的项目有一个固定的版本标识来指向该项目的某一个特定的版本。而正在开发中的项目可以用一个特殊的标识,
这种标识给版本加上一个“SNAPSHOT”的标记。
packaging
项目的类型,默认是jar,描述了项目打包后的输出。类型为jar的项目产生一个JAR文件,类型为war的项目产生一个web应用。(输入后在elipse没有反映)
Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:2.5
Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:
Failure to transfer org.apache.maven.plugins:maven-plugins:19 from http://repo.maven.apache.org/maven2 was cached in the local repository,resolution will not reattempted until the update interval of central has elapsed or updates are forced.Original
1.找到maven库目录,进入:~\.m2\repository\org\apache\maven\plugins\maven-surefire-plugin\2.7.1
2.若2.7.1目录下只有,"maven-surefire-plugin-2.7.1.pom.lastUpdated" 则需要到http://repo1.maven.org/maven2/org/apache/maven/plugins/maven-surefire-plugin/2.7.1/,把里面的文件下载下来放到2.7.1
3.删除2.7.1下的maven-surefire-plugin-2.7.1.pom.lastUpdated文件。
4.项目右键-->maven-->Update Dependencies
详细的maven的使用可以参照:http://blog.csdn.net/yuguiyang1990/article/details/8797153
myeclispe使用maven进行jar包的管理开发一个servlet项目:
1.参照上面的给出的网址创建一个web项目,是使用maven进行管理的,web项目的结构配置好如下:
2.在pom里面添加包的依赖和属性的配置
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.xjd</groupId> <artifactId>mywebapp</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>mywebapp Maven Webapp</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> <dependency> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> </dependency> <!-- 添加Servlet --> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>mywebapp</finalName> </build> </project>
3.建立包和写servlet类
package com.wj.demo2;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class UserServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
// super.doPost(req, resp);
req.setCharacterEncoding("utf-8");
resp.setContentType("text/html;charset=utf-8");
String action = req.getParameter("action");
if("login_input".equals(action)){
req.getRequestDispatcher("login.jsp").forward(req , resp);
}else if("login".equals(action)){
String name = req.getParameter("name");
String password = req.getParameter("password");
System.out.println("name->" + name + ",password->" + password);
}
}
}
4.在web.xml里面配置servlet
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>userservlet</servlet-name>
<servlet-class>com.wj.demo2.UserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>userservlet</servlet-name>
<url-pattern>/userservlet</url-pattern>
</servlet-mapping>
</web-app>
5.写jsp文件
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>my first maven test</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<p>大家好!</p>
<h2>hello world.!!你好啊 . </h2><br>
<a href="userservlet?action=login_input">去登录</a>
</body>
</html>
写login.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>登入界面login</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form action="userservlet?action=login" method="post">
Name:<input type="text" name="name" /><br>
Password:<input type="password" name="password" />
<input type="submit" value="登录" />
</form>
</body>
</html>
6.项目的完整结构:
7.发布项目,项目的发布和一般的项目发布一样,启动tomcat服务器
8.访问项目;注意maven的web访问不是http://localhost:8080/项目名,而是http://localhost:8080/+<artifactId>mywebapp</artifactId>里面的内容,比如这里的事mywebapp/*.jsp
9.页面结果
登入成功,后台有数据打印出来,可以查看。
这就是maven来管理servlet的过程
相关文章推荐
- maven-mybaties-generator学习笔记整理
- J2ME学习笔记整理(三)
- J2ME学习笔记整理(一)
- Ajax基础教程整理,学习笔记
- GTK+图形化应用程序开发学习笔记整理[zt]
- FreeBSD学习笔记整理[转]
- “面向状态软件开发”学习笔记一(整理LeWolf的文章)
- maven2.0学习笔记
- DWR util.js 学习笔记 整理
- 整理学习笔记
- IBM DB2 学习笔记整理(一):概述
- [学习笔记]servlet基础知识整理
- Java容器学习笔记(由java编程思想和网上资料整理而成)
- solaris 10 学习笔记收集整理
- J2ME学习笔记整理(二)
- linux 学习笔记(系统管理篇#已整理完#)
- maven2.0学习笔记[摘]
- 计算机软件测试技术学习笔记(整理)
- 整理JAVA学习笔记 JAVA基础需要掌握重点
- maven2学习 新手上路(笔记形式)