maven 学习笔记(二)创建一个简单的 eclipse+android+maven 工程

因为拿到的工程本身就带有maven控制,但怎样创建一个android工程,并且带有maven控制,一直是困扰我的问题。

经过在网上的搜索终于有了进展。

1、首先需要解决一个问题:原型插件如何知道相关的原型呢?

http://maven.apache.org/archetype/maven-archetype-plugin/specification/archetype-catalog.html中给出了解释。

 

2、另外一个网上提供了maven android插件,使得我们可以直接利用eclipse生成带有maven控制的android程序。

https://github.com/akquinet/android-archetypes/wiki/

 

3、我们要生成的是一个简单的android带maven控制的程序,android-quickstart-archetype类型即可满足我们的需要。点击后进去,发现此种类型提供了相关参数:

mvn archetype:generate \
 
-DarchetypeArtifactId=android-quickstart \ 
 
-DarchetypeGroupId=de.akquinet.android.archetypes \ 
 
-DarchetypeVersion=1.0.5 \ 
 
-DgroupId=your.company \ 
 
-DartifactId=my-android-application 

4、这儿有几样东西很重要,groupid,artifactid,version,其中version可能会有所更新,请到如下网站查找最新的version(也就是我们常说的maven中央库)

http://search.maven.org/

将android-quickstart输入即可查到最新的版本,我此时查到的版本已经更新至1.0.6

准备工作做完,现在可以工作了。

 

 

 

创建一个最简单的带maven控制android工程

1、打开eclipse,通过工具new  project出现如下窗口:

image

 

2、选中Maven Project, 点击Next,然后保持默认选项,再点击next,弹出如下窗口

image

 

3、在过滤器中输入android,如果你已经有这样的插件,将会显示出来,否则就需要通过Add Archetype按钮进行添加

image

 

3-1、因为我之前已经安装了这三个插件,因此输入过滤器后直接就有了,如果系统没有找到android-quickstart插件,则需点击Add Archetype,弹出如下窗口,然后将所需要的插件的groupid,artifactid及版本号输入进去,根据准备工作中提及,分别是:

de.akquinet.android.archetypes

android-quickstart

1.0.6

如下图所示:

image

 

4、点击OK后,系统会去寻找相关的插件,然后选中此插件,再次点击Next,依次填入新工程的groupid, artifactid, package,如下图所示:

image

最后点击Finish,交由系统自动生成。生成后实际上是一个最简单的带maven控制的android程序,运行后显示"Hello study!”

 

pom.xml如下所示(根据个人配置,可能会稍有不同)

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5     <groupId>com.szkingdom</groupId>
 6     <artifactId>study</artifactId>
 7     <version>0.0.1-SNAPSHOT</version>
 8     <packaging>apk</packaging>
 9     <name>study</name>
10  
11     <dependencies>
12         <dependency>
13             <groupId>com.google.android</groupId>
14             <artifactId>android</artifactId>
15             <version>2.1.2</version>
16             <scope>provided</scope>
17         </dependency>
18     </dependencies>
19  
20     <build>
21         <plugins>
22             <plugin>
23                 <groupId>com.jayway.maven.plugins.android.generation2</groupId>
24                 <artifactId>maven-android-plugin</artifactId>
25                 <version>2.8.4</version>
26                 <configuration>
27                     <androidManifestFile>${project.basedir}/AndroidManifest.xml</androidManifestFile>
28                     <assetsDirectory>${project.basedir}/assets</assetsDirectory>
29                     <resourceDirectory>${project.basedir}/res</resourceDirectory>
30                     <nativeLibrariesDirectory>${project.basedir}/src/main/native</nativeLibrariesDirectory>
31                     <sdk>
32                         <platform>7</platform>
33                     </sdk>
34                     <deleteConflictingFiles>true</deleteConflictingFiles>
35                     <undeployBeforeDeploy>true</undeployBeforeDeploy>
36                 </configuration>
37                 <extensions>true</extensions>
38             </plugin>
39  
40             <plugin>
41                 <artifactId>maven-compiler-plugin</artifactId>
42                 <version>2.3.2</version>
43                 <configuration>
44                     <source>1.6</source>
45                     <target>1.6</target>
46                 </configuration>
47             </plugin>
48         </plugins>
49     </build>
50 </project>

 

posted on 2013-08-06 16:51  11133432211  阅读(242)  评论(0)    收藏  举报