这段时间由于工作需要,学习了maven如果打包,经过几天的学习将学习成果分享一下,挺适合新手的。
以下安装方法支持操作系统 XP与W7
第一步:下载maven
进入http://maven.apache.org/download.html下载maven
第二步:安装maven
将下载好的maven解压出来即可实现安装
第三步:配置path路径
首先配置M2_HOME路径,就写成M2_HOME,然后配置值[你的maven安装路径]\apache-maven-2.2.1
然后配置path路径为:%M2_HOME%\bin
第四步:创建maven项目
1、启动intellij IDEA
2、创建在IDEA里面新建项目
步骤为File->New Project->Create project from scratch->Maven Module->【接下来一路finish】
完成后IDEA将会自动帮我们建一个maven项目
src/main/java目录为存放需要进行编译代码的目录
src/test/java目录为存放测试代码的目录
第五步:导入groovy代码
在src/main/java里面将需要打包的groovy代码放进去,可保存目录结构
由于maven里面的jar包采用依赖的方式进行关联,所以jar包可以不需要导入
第六步:为groovy需要的jar包建立依赖
在maven中pom.xml这个文件是最重要的。简单的maven项目的操作基本上都在pom.xml里面就可以完成。
假如我们的groovy项目里面有一个log4j这个jar包需要导入
1、http://mvnrepository.com 进入这个网站,搜索log4j然后点击最前面的一个进入详细页面。
2、选择版本号,加入我们选择的是1.2.16那么点击1.2.16进入这个版本的详细页面
3、进入页面后就能够看到需要加入到pom.xml文件的代码,代码如下
<dependency>
<groupId>log4j</groupId><!--团体标识-->
<artifactId>log4j</artifactId><!--唯一标识-->
<version>1.2.16</version><!--版本号-->
</dependency>
dependency需要加在<dependencies>里面。加入后的代码如下
<dependencies>
<dependency>
<groupId>log4j</groupId><!--团体标识-->
<artifactId>log4j</artifactId><!--唯一标识-->
<version>1.2.16</version><!--版本号-->
</dependency>
<dependency>
其它依赖
</dependency>
</dependencies>
到此一个依赖就建立好了,其他的依赖参照该步骤都可以完成
第七步:配置JDK版本
由于Maven的compiler默认只支持JDK1.3,所以我们需要自己配置更高版本的JDK
1、将如下带按摩添加到POM.XML当中,请加载dependencies的下面
<build>
<!--插件-->
<plugins>
<!--配置JDK版本,因为默认Maven是1.3版本的-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source><!--版本号-->
<target>1.6</target><!--版本号-->
</configuration>
</plugin>
</plugins>
</build>
2、结束,JDK配置完成了,到此如果是java代码,那么就可以进行完成的打包了,但是如果需要打一个可执行的jar包的话,还需要加入另外一个插件
第八步:配置可执行jar包插件
1、在pom.xml里面加入插件代码,代码如下,代码需要加载<builds></builds>里面
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<tarnsformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<!--指定需要执行main方法的类,该类里面必须包含main方法-->
<mainClass>com.bobo.test.Demo</mainClass>
</tarnsformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
第九步:添加编译groovy代码插件
需要compile时能够编译groovy代码的话就需要加入插件才行的,默认maven是不能够对groovy进行编译的,以下是需要加在pom.xml里面编译groovy的代码与插件
1、在<dependencies></dependencies>当中加入以下代码
<!--如果需要打包groovy就需要加入org.codehaus.groovy依赖-->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.8.5</version>
</dependency>
</dependencies>
<plugin>
<!--编译groovy代码插件,没有以下插件groovy默认是不会进行编译的-->
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<configuration>
<tasks>
<mkdir dir="${basedir}\src\main\java\test\"/>
<taskdef name="groovyc" classname="org.codehaus.groovy.ant.Groovyc">
<classpath refid="maven.compile.classpath"/>
</taskdef>
<mkdir dir="${project.build.outputDirectory}"/>
<!--destdir指定编译后的groovy字节码文件的存储路径,${project.build.outputDirectory}为系统默认的存储路径,在maven项目路径没有进行更改的情况下直接用这个即可-->
<!--srcdir指定需要进行编译的groovy代码文件夹-->
<groovyc destdir="${project.build.outputDirectory}"
srcdir="${basedir}\src\main\java\test\">
<classpath refid="maven.compile.classpath"/>
</groovyc>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
第十步:成功安装与为groovy项目打包
这个时候就可以clean、compile、package了。
intellij IEAD自带了clean、compile、package等操作。在打开的maven项目当中,点击右侧的Maven Projects按钮就可以打开操作窗口,双击即可运行。运行完这些操作后,如果你的编译与生成包的项目路径没有改变的话,那么在项目根目录下面的target文件夹里面就会保存着编译后的class文件与打包好的jar文件其中[名字-1.0.jar]是可以直接执行的包,[original-名字-1.0.jar]是不能直接执行的包。
结束语
以上是我最近学习maven的第一个例子,中间走了好多弯路,也请教了好多前辈,为了后来者少走弯路也为了加深自己的记忆,特将整个过程记录下来。
附一些常用的地址
插件仓库(通过以下两个地址可以找到你需要简历依赖时需要的值(groupId、artifactId、version)
http://search.maven.org/
http://mvnrepository.com/
文档地址
http://maven.apache.org/guides/index.html
maven之父的博客
https://github.com/jvanzyl
附两本常用的书名(这两本书随便一搜就出来了,就不贴地址了)
Maven实战——入门篇.pdf
maven-definitive-guide_zh.pdf