可先阅读
其实之前已转过几个,但忘了记录下来,今天又转了一个项目,补记录一下。
步骤
1、写pom.xml
最耗费时间的一步。因为不用maven的话,都是一堆jar包,都引入就行,用ant或eclipse都可编译。但是maven的pom.xml需要明确使用哪些jar,当然你也是一堆都写入pom也可以,但是你会发现太多了烦死你,还不如整理一下哪些是真正需要的jar包。
2、在myeclipse转为maven项目
如果你不用eclipse,可跳过此步。
方法是鼠标放在项目上,右键-Configure-Convert to Maven project(或者直接手工修改.project文件也行)
3、移动源代码目录
在src下建main和java,把原src下com的全部源代码移过去。maven只认这个目录,不移动的话mvn compile会报没有编译的代码。
当然,resource也同样道理。
使用
上面三步基本就ok了。
使用的方法是:
清空:mvn clean
编译:mvn compile
打包:mvn clean package
发布:mvn clean deploy
(直接mvn package或者mvn deploy也可以,但是不建议。gradle的发布是publish,单词不太一样)
清空、编译、打包都不需要用户名密码,但是发布就需要了。否则会报错:
…/framework/1.0-SNAPSHOT/framework-1.0-20150704.084651-1.jar.
Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]
办法是配置settings.xml(必须配置这个,不能通过配置pom.xml,这一点和gradle不太一样)
<server>
<id>proj-snapshots</id>
<username>deployment</username>
<password>deployment123</password>
</server>
用户可以通过nexus来建,默认就有deployment用户,密码默认是加123,不建议用admin用户。
尤其注意,id不能乱填,必须是里的id。
几个要点
- 发布后可以在nexus/content/repositories/snapshots下看到jar,如果是snapshot,会后面自动加上日期和序号,这是maven对snapshot的特性,用于给别的工程自动更新关联编译。如果你什么都没改,又执行一下deploy命令,会在该目录下再生成一个jar。
- [ERROR] /F:/code/bss_gd-trunk/mapp/zplat/framework/src/main/java/com/info/appframework/common/TimeUtil.java:[295,37] 编码GBK的不可映射字符
解决方法:pom.xml里配置《project.build.sourceEncoding>UTF-8《/project.build.sourceEncoding>
转载请标明出处:
2015.7.4
版权声明:本文为博主原创文章,未经博主允许不得转载。