您的位置:首页 > 编程语言 > Java开发

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

2011-08-29 13:30 876 查看
因为拿到的工程本身就带有maven控制,但怎样创建一个android工程,并且带有maven控制,一直是困扰我的问题。

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

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

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

 

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

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

 

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

[code][code]mvnarchetype:generate\




-DarchetypeArtifactId=android-quickstart\




-DarchetypeGroupId=de.akquinet.android.archetypes\




-DarchetypeVersion=1.0.5\




-DgroupId=your.company\




-DartifactId=my-android-application

[/code]
[/code]

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

http://search.maven.org/

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

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

 

 

 

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

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





 

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





 

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





 

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

de.akquinet.android.archetypes

android-quickstart

1.0.6

如下图所示:





 

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





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

 

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

[code] 


 


<?xmlversion="1.0"encoding="UTF-8"?>


<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"


xsi:schemaLocation="http://maven.apache.org/POM/4.0.0'target='_blank'>http://maven.apache.org/maven-v4_0_0.xsd">[/code]
<modelVersion>4.0.0</modelVersion>


<groupId>com.szkingdom</groupId>


<artifactId>study</artifactId>


<version>0.0.1-SNAPSHOT</version>


<packaging>apk</packaging>


<name>study</name>


 


<dependencies>


<dependency>


<groupId>com.google.android</groupId>


<artifactId>android</artifactId>


<version>2.1.2</version>


<scope>provided</scope>


</dependency>


</dependencies>


 


<build>


<plugins>


<plugin>


<groupId>com.jayway.maven.plugins.android.generation2</groupId>


<artifactId>maven-android-plugin</artifactId>


<version>2.8.4</version>


<configuration>


<androidManifestFile>${project.basedir}/AndroidManifest.xml</androidManifestFile>


<assetsDirectory>${project.basedir}/assets</assetsDirectory>


<resourceDirectory>${project.basedir}/res</resourceDirectory>


<nativeLibrariesDirectory>${project.basedir}/src/main/native</nativeLibrariesDirectory>


<sdk>


<platform>7</platform>


</sdk>


<deleteConflictingFiles>true</deleteConflictingFiles>


<undeployBeforeDeploy>true</undeployBeforeDeploy>


</configuration>


<extensions>true</extensions>


</plugin>


 


<plugin>


<artifactId>maven-compiler-plugin</artifactId>


<version>2.3.2</version>


<configuration>


<source>1.6</source>


<target>1.6</target>


</configuration>


</plugin>


</plugins>


</build>


</project>


 


 

[/code]
[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: