虽然公司仍然使用ant,但自己还是尝试使用了下Maven2
网上资料虽然很多,还是总结出自己所需要的
一些好的文章
我的Maven之旅
http://www.blogjava.net/sitinspring/archive/2007/06/18/125006.html
http://zyl.iteye.com/blog/41754
等等
以下是我简单的总结
MAVEN 使用帮助
feigme
版本声明
JDK : 5.0
Maven : 2.0.9
OS : windows xp
安装
Maven 下载地址 : http://maven.apache.org/download.html
安装 Eclipse Maven2 插件 : http://m2eclipse.sonatype.org/update/
解压 Maven 至 D:\apache-maven-2.0.9
设置环境变量 : MAVEN_HOME = D:\apache-maven-2.0.9
添加 Path : %MAVEN_HOME%\bin
测试安装 :
C:\Documents and Settings\Administrator>mvn -version
Maven version: 2.0.9
Java version: 1.5.0_10
OS name: "windows xp" version: "5.1" arch: "x86" Family: "windows"
常用命令
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 的路径变量 M2_REPO
Window -> Preferences -> Java -> Build Path -> Classpath Variables
New Name 命名 : M2_REPO
路径 :本地的 maven 类库地址
这里为 C:/Documents and Settings/{ 你的系统登录用户名 }/.m2/repository
pom.xml 文件基本节点介绍
<project > :文件的根节点 .
<modelversion > : pom.xml 使用的对象模型版本 .
<groupId > :创建项目的组织或团体的唯一 Id.
<artifactId > :项目的唯一 Id, 可视为项目名 .
<packaging > :打包物的扩展名,一般有 JAR,WAR,EAR 等
<version > :产品的版本号 .
<name > :项目的显示名,常用于 Maven 生成的文档。
<url > :组织的站点,常用于 Maven 生成的文档。
<description > :项目的描述,常用于 Maven 生成的文档。
在 POM 4 中, <dependency> 中还引入了 <scope> ,它主要管理依赖的部署。
目前 <scope> 可以使用 5 个值:
compile :缺省值,适用于所有阶段,会随着项目一起发布。
provided :类似 compile ,期望 JDK 、容器或使用者会提供这个依赖。如 servlet.jar 。
runtime :只在运行时使用,如 JDBC 驱动,适用运行和测试阶段。
test :只在测试时使用,用于编译和运行测试代码。不会随项目发布。
system :类似 provided ,需要显式提供包含依赖的 jar , Maven 不会在 Repository 中查找它。
定义自己的结构
新建一个 archetype 项目 :
mvn archetype:create\
-DgroupId=cn.prof\
-DartifactId=prof-archetype\
-DarchetypeArtifactId=maven-archetype-archetype
主要的模板文件 : archetype-resources/pom.xml
修改其中内容
修改 META-INF/maven/archetype.xml 中定义了相关的 sources
安装此项目 : mvn install
执行下面的命令创建新目录的项目:
mvn archetype:create -DgroupId=com.mergere.mvnbook \
-DartifactId=proficio-example\
-DarchetypeGroupId=com.xxx.mvn\
-DarchetypeArtifactId= prof-archetype \
-DarchetypeVersion=1.0-SNAPSHOT
目录说明
Maven2 Directory
目录
二级目录
三级目录
四级目录
说明
pom.xml
Maven2 的项目设置文件
src/
源码目录
main/
项目主体目录根
java/
源代码目录
resources/
所需资源目录
filters/
资源过滤文件目录
assemby/
Assembly descriptors
config/
配置文件根目录
webapp/
web 应用目录
WEB-INF/
WEB-INF 目录
test/
项目测试目录根
java/
测试代码目录
resources/
测试所需资源目录
filters/
测试资源过滤文件目录
site/
与site 相关的资源目录
target/
输出目录根
classes/
项目主体输出目录
test_classes/
项目测试输出目录
site/
项目site 输出目录
碰到的问题
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代码
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</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插件的引用依赖,错误就会消除
4. Failure executing javac, but could not parse the error:
编译器 (1.5.0_10) 中出现异常。 如果在 Bug Parade 中没有找到该错误,请在 Java Developer Connection (http://java.sun.com/webapps/bugreport ) 对该错误进行归档。 请在报告中附上您的程序和以下诊断信息。谢谢您的合作。
java.nio.BufferOverflowException
解决办法 :(临时)在控制面板中将区域与语言选项中,把当地语言设为英语
(为什么我还会出现这个问题?请指教)
分享到:
相关推荐
以上就是针对Maven常见问题的一些解答,涵盖了项目导入、依赖解析、构建错误等多个方面。通过这些解决方案,开发者应该能够解决在使用Maven过程中遇到的大部分问题。不过,需要注意的是,Maven的配置可能会因环境和...
### Maven常见问题及解决办法 在使用Maven构建项目的过程中,开发者可能会遇到各种各样的问题。本文将针对几个常见的Maven问题及其解决方法进行详细解析。 #### 问题1:依赖解析失败 **错误信息示例**: ``` ...
### Maven常见问题问答知识点 #### 1. Maven简介与应用场景 - **概念梳理**:Maven是一个项目管理和理解工具,其设计目标在于帮助开发者更好地管理Java项目。它通过一系列的预设规则和流程,简化了项目的构建过程...
对于使用maven进行开发的过程中出现的乱码问题做了一个处理,并在其中给出了解决的方案
#### 五、Maven常见问题解决 - **项目构建失败** - 检查`pom.xml`文件是否正确配置了依赖关系。 - 确保网络连接正常,以便Maven可以下载所需的依赖库。 - **Tomcat启动失败** - 检查Tomcat的日志文件,查看具体...
** Maven常见错误集合详解 在使用Maven进行Java项目构建时,可能会遇到各种问题,这里主要探讨两个常见的错误情况:编码问题和远程仓库下载失败。 ### 1. Maven编码问题:“编码GBK的不可映射字符” 这个错误通常...
ant学习指导文档 maven配置 maven常见问题问答 对于初学或想深入了解maven的童鞋以指导
#### Maven常见问题解决 - **依赖冲突**:可以使用`<dependencyManagement>`和`<exclusions>`来解决依赖冲突问题。 - **仓库依赖错误**:确保网络配置正确,使用`-U`参数强制更新快照依赖。 - **命令行执行问题**:...
#### Maven常见问题及解决方法 1. **依赖冲突**:如果遇到依赖版本冲突的问题,可以通过 POM 文件中的 `<dependencyManagement>` 部分显式指定依赖版本,或者使用 `mvn dependency:tree` 命令查看依赖树来排查问题...
eclipse 集成 maven 插件后,在引用maven项目的时候,经常会出现不是MAVEN项目,maven-compiler-plugin 找不到,没能引入 Maven Dependencies 包等问题。现在把个人的结局方法分享给大家
maven在myeclise中如何配置并且使用,常见问题解决方案
本文罗列了 MAVEN开发过程中一些令人头疼的错误 和解决办法,这些错误在开发过程中都会遇到,对使用MAVEN开发的列位程序员大有帮助
### Maven与IntelliJ IDEA集成常见问题解析 #### 一、前言 在软件开发过程中,尤其是Java项目中,IntelliJ IDEA与Maven的结合使用可以极大地提高开发效率。然而,在实际操作过程中,不少开发者可能会遇到一些集成上...
本文将针对一些常见的问题进行详细的解答,并提供相应的解决方案,帮助大家顺利搭建Maven项目。 #### 一、问题1: Cannot change version of project facet DynamicWebModule to 3.0. **问题描述**: 在配置或更新...
然后,你可以使用以下常见命令: - `mvn clean`:清理项目生成的目标文件。 - `mvn compile`:编译源代码。 - `mvn test`:运行测试。 - `mvn package`:打包项目,生成可部署的JAR或WAR文件。 - `mvn install`:将...
4. **增强Maven命令**:MavenRunHelper作为压缩包中的主要文件,可能包含了增强Maven命令行执行的功能,例如自定义构建目标,快速执行常见的Maven命令等。 5. **集成到IDEA工作流**:MavenHelper插件无缝集成到IDEA...
本文总结了在Idea2019中导入Maven项目时的一些常见问题和解决方法。 问题一:Maven版本不兼容 解决方法:下载Maven 3.6.1以前的版本,或者使用官网提供的链接下载。 问题二:设置Maven的Setting.xml文件 解决方法...