前言:对于微软技术死忠的笔者来说,学习JAVA灵活又复杂的技术是件多么痛苦的事,开始想念我大微软简单的开发环境搭建以及完整详尽的开发文档,还有那一看就懂的案例教程了...
可是为了工作,依旧不得不继续潜心钻研JAVA技术,好在我同事xunhua是技术大神,笔者在其帮主下避过了不少弯路,笔者决定记录一系列在JAVA技术学习上遇到的问题,以备日后复用先介绍下Maven:
Maven是一个采用纯Java编写的开 源项目管理工具。Maven采用了一种被称之为project object model (POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做POM.xml的文件中,通过该文件,Maven可以管理项目的整个声明周期,包括编 译,构建,测试,发布,报告等等。目前Apache下绝大多数项目都已经采用Maven进行管理。而Maven本身还支持多种插件,可以方便更灵活的控制项目。扩充:与Maven差不多齐名的以前还有个Anti,但Anti日渐势衰,现在大部分都开始转向Maven。吐槽:不得不感叹一句,学JAVA是多么受虐的一件事,技术更新换代的速度太快,以至于需要不断不断地学习新的技术(几乎每半年冒出个很火的)。这是也当初笔者初学编程时选择微软体系的重要原因之一,.NET的技术更新虽然是每年1至2年一大更,但运用到实际到生产环节并不建议一直追着最新技术,保持一个版本的技术代沟,可以保证自己少踩一些坑,当然如果精力旺盛又想当大神的,可以一直追着技术潮流的第一浪不断学习...步骤概览:
下载->配置环境->使用命令行创建工程->导入eclipse1.下载
地址:http://maven.apache.org/download.html
笔者写作时使用的是:Apache Maven 3.3.9下载完毕后将文件解压出来,可以看到以下文件
(记住你解压的路径地址下一个步骤需要)
2.配置环境
->!:配置Maven环境前需要安装JDK及配置JDK环境JDK传送门:http://www.cnblogs.com/tiankong101/p/4226559.html (废话比较多)->配置Maven环境新增以下Windows**系统环境变量**变量名:MAVEN_HOME 变量值: D:\apache-maven-3.3.9 (maven解压出来的路径)变量名:MAVEN 变量值: %MAVEN_HOME%\bin 变量名:MAVEN_OPTS 变量值: -Xms256m -Xmx1024m //(可选)该参数用于配置MAVEN可使用的内存 //Xms为允许最小内存,Xmx为允许最大内存 //当使用MAVEN编译发生内存溢出错误时即需要提高此参数Xmx数值 ->在 path 变量最后加上 %MAVEN%;->测试配置 Win+R打开cmd命令工具,输入 ->$mvn -version 可查看到以下输出即表示配置成功
(以上为借的图)
3.使用命令行创建工程
除了命令行创建工程之外还可以使用eclipse插件来创建项目,大神同事说搭建插件环境太复杂,使用cmd命令来创建较为简单,尝试了一下没成功也就放弃了,感兴趣的同学可以深入,但个人觉得cmd更为直观,前提是会cmd简单命令->使用转到你想要将工程存放的文件路径扩充: $cd 为转到命令,从一个盘的路径切到另一个盘的路径前,需要先切换盘符比如C:\Documents and Settings要切换到D:\Programe Files需要要->$D:然后再->$cd D:\Programe Files!:使用连续两次tab键可以自动补足文件或文件夹全名切换好路径后使用->$mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false//该命令用于创建web项目//{project-packaging}为打包名,笔者使用com.calx//{project-name}为项目名,笔者使用maven-test或使用->$mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false//该命令用于创建QickStart项目!:参考资料:(http://trinea.iteye.com/blog/1290898)扩充:让maven下载其他依赖时使用代理如果没有创建C:\Users\xxx\.m2文件夹则需要自行创建,xxx为你的windows用户名在.m2文件夹下创建settings.xml文件填入一下内容MyProxy //代理名true //是否激活http //代理协议xxx.xxx.xxx.xxx //代理IP地址xxxx //代理端口//代理登录帐号 //代理登录密码 localost|
4.导入eclipse
在Package Explorer中邮件找到Import
在弹出的窗口内找到Maven->Existing Maven Projects
选择路径后点finish按钮即可完成
(以上为web项目截图)
5.常用命令
mvn clean 清除目标目录中的生成结果mvn compile 编译源代码mvn test-compile 编译测试代码mvn test 运行应用程序中的单元测试mvn package 依据项目生成 jar 文件mvn install 在本地 Repository 中安装 jar如之前文中提到的,maven可以帮你管理项目的整个生命周期,以上命令则对应了发布前你所
希望操作的周期,由于笔者没有深入了解过执行顺序,仅从install命令中可以简单看出,maven的默认发布顺序大概为clean->compile->test->package,所以一般使用install即可----------!
找到一篇较为详尽的教程
----------!
以下为笔者遇到的问题
1.settings.xml的设置
.m2文件夹下的配置为当前用户配置,所以存放于xxx\\.m2文件夹下的settings.xml只对该xxx用户生效可以手动编辑配置settings.xml(复制解压出来后的conf文件里的settings.xml模板自行修改)也可以通过eclipse进行配置,eclipse配参考**详尽的教程**
2.不能创建src/main/java文件夹
提示为文件夹已存在(The folder is already a source folder.)解决办法为在左侧列表中,src文件夹下main文件夹下创建java文件夹即可创建完之后java文件夹在左侧列表中不可见,但会跑到上面以Source Folder形势出现多半是Eclipse的bug吧