android + maven + eclipse 开发环境搭建(windows) 一

来源:互联网 发布:中国房地产 知乎 编辑:程序博客网 时间:2024/05/16 14:07

       工作需要,因为自己折腾的时候发现网上资料也不是很系统,所以记录下自己折腾的过程,,目前在我机器上是运行良好。同时首次发稿,排版或者各种不舒服,错误,见谅,同时不足之处谢谢指点。

一,准备工作,以及我的环境

OS:  windows 8 中文版 , 64位

Jdk: 1.7.0_51, 64位 加环境变量

Maven: 3.2.3 加环境变量

eclipse + sdk : 我是去官网直接下的adt,adt版本是23.02. adt-bundle-windows-x86_64-20140702.zipzip解压开后查看的eclipse的版本是4.2.0,(.../eclipse/readme/readme_eclipse.html  查看版本),安装完成后发现版本变成4.3.2了,你说我怎么发现  的?因为原先开始的Juno变成了kepler了。

sdk: sdk设置环境变量。从adt-bundle的zip解压出的sdk 中,android sdk tools 版本也是23.0.2,因为adt有最新的23.0.3版本,不要在后续操作中更新该工具。

 git:  Git 1.9.2-preview 在(android + maven + eclipse 开发环境搭建(windows) 二) 中将会使用到的工具。

二,我们要做什么?

1,在eclipse中安装m2e插件。

2,在eclipse中安装m2e-android插件。

3,测试在eclipse中new一个maven android project是否可以正常run. 伴随着修复pom.xml在eclipse的报错修复。

4,测试在eclipse中import一个maven android project是否一切顺利.同样伴随着修复pom.xml在eclipse的报错修复(放到二中去讲)。

 

ok ,go

    1,安装m2e之前,我们先要安装依赖,否则,直接安装m2e会报错。 打开eclipse .   Help  ->  Install New Software... -> Add    slf4j   http://www.fuin.org/p2-repository/

 

 

只安装Maven osgi-bundles  的子项slf4j-api   1.6.6 。 然后就是next,next...安装完毕后restart eclipse,中间的警告什么的你可以读读什么意思就过吧。接下来正式安装m2e, Help  ->  Install New Software... -> Add   m2e     http://download.eclipse.org/technology/m2e/releases , 一路next .....restart eclipse .

 

 

我们稍微看下m2e有没有安装成功,   Window -> Preferences    左侧有Maven 显示了么?有的话,说明我们安装成功了,然后我们配置下Maven本地仓库,当然你也可以用默认的,点击展开Maven,  User Settings ,右侧User Settings ,点击Browse...找到你自己的settings.xml,ok以后,maven本地仓库就已经被你成功替换成自己存的地方了。

 

 

2.开始安装m2e-android.   Help  ->  Install New Software... -> Add    m2e-android  http://rgladwell.github.com/m2e-android/updates/  你只需要安装android for maven eclipse

然后就是一路next,直到重启eclipse,你会发现,juno变成kepler了。

 

3,现在我们的插件全部安装完毕,开始测试成果了。 鼠标右键 -> New  -> Other -> Maven -> Maven project -> next

 

 

这里,开始出现错误,我们一个一个解决,android-maven-test] Unable to resolve target 'android-16'  因为我们下的adt中的sdk只带有20 w一个sdk,所以更新你的sdk,将16安装上,因为我有安装完全的sdk,所以我在图示位置改下sdk位置就可以了

 

 

到这里以后,我们发现项目目录结构变成这样了,同样的,我们下面还发现有2个error需要处理

 

2个错误的意思是什么呢,Description Resource Path Location Type
Plugin execution not covered by lifecycle configuration: com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.8.2:consume-aar (execution: default-consume-aar, phase: compile) pom.xml /android-maven-test line 39 Maven Project Build Lifecycle Mapping Problem
这个说的是什么生命周期问题,我理解的是将这个插件加入到生命mvn生命周期中,其实真正的具体意思我也不太明白,不误导大家,我们现在需要的是解决之,将如下代码加到我们的pom.xml文件中<pluginManagement><plugins>的节点下,ok,上代码,同时附上一段英文。以下是需要添加的代码。

<plugin>    <groupId>org.eclipse.m2e</groupId>    <artifactId>lifecycle-mapping</artifactId>    <version>1.0.0</version>    <configuration>        <lifecycleMappingMetadata>            <pluginExecutions>                <pluginExecution>                    <pluginExecutionFilter>                        <groupId>com.jayway.maven.plugins.android.generation2</groupId>                        <artifactId>android-maven-plugin</artifactId>                        <versionRange>[3.8.0,)</versionRange>                        <goals>                            <goal>consume-aar</goal>                        </goals>                    </pluginExecutionFilter>                    <action>                        <ignore />                    </action>                </pluginExecution>            </pluginExecutions>        </lifecycleMappingMetadata>    </configuration></plugin>


Location of this lifecycle-mapping in pom.xml is important, it must be declared in a pluginManagement
section that occurs immeadiately after the build section. It has to be in the root pom.xml file if you
have a large project tree.

现在,我们的pom.xml文件变成了这个样子

 

<?xml version="1.0" encoding="UTF-8"?><project xmlns="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 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.example.test</groupId><artifactId>android-maven-test</artifactId><version>0.01</version><packaging>apk</packaging><name>android-maven-test</name><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><platform.version> 4.1.1.4</platform.version><android.plugin.version>3.8.2</android.plugin.version></properties><dependencies><dependency><groupId>com.google.android</groupId><artifactId>android</artifactId><version>${platform.version}</version><scope>provided</scope></dependency></dependencies><build><finalName>${project.artifactId}</finalName><pluginManagement><plugins><span style="color:#ff6666;"><plugin><groupId>org.eclipse.m2e</groupId><artifactId>lifecycle-mapping</artifactId><version>1.0.0</version><configuration><lifecycleMappingMetadata><pluginExecutions><pluginExecution><pluginExecutionFilter><groupId>com.jayway.maven.plugins.android.generation2</groupId><artifactId>android-maven-plugin</artifactId><versionRange>[3.8.0,)</versionRange><goals><goal>consume-aar</goal></goals></pluginExecutionFilter><action><ignore /></action></pluginExecution></pluginExecutions></lifecycleMappingMetadata></configuration></plugin></span><plugin><groupId>com.jayway.maven.plugins.android.generation2</groupId><artifactId>android-maven-plugin</artifactId><version>${android.plugin.version}</version><extensions>true</extensions></plugin></plugins></pluginManagement><plugins><plugin><groupId>com.jayway.maven.plugins.android.generation2</groupId><artifactId>android-maven-plugin</artifactId><configuration><sdk><platform>16</platform></sdk></configuration></plugin></plugins></build></project>


保存pom.xml,pom文件不报错了,但是我们的项目还是有个大红叉的,那看第二个errors : Description Resource Path Location Type Project configuration is not up-to-date with pom.xml. Run Maven->Update Project or use Quick Fix. android-maven-test  line 1 Maven Configuration Problem.嗯,让我们update project 或者 Quick fix 下项目,所以,照做。

 

ok,至此,项目不报错了,我们添加一个三方jar包试试吧,这里,我用的是 android-async-http

<dependency><groupId>com.loopj.android</groupId><artifactId>android-async-http</artifactId><version>1.4.6</version></dependency>

look,jar包被依赖进来了

 

至此,android + maven + eclipse 环境搭建成功,可以愉快的使用了,我在搭建过程中,也是不停的google,我会十分欣慰如果这篇文章能够帮到你。在android + maven + eclipse 开发环境搭建(windows)  二 中,我会详细讲解怎么导入一个mvn管理的android项目至eclipse中。有什么问题可以发邮箱shechaoqun@gmail.com,回复的慢也请见谅。

我不知道为什么我的xml代码贴上来是红色的。首次发博,海涵。

 

 


 


 

 

 

 

 

 

 

 

       

 

 

 

 

 

0 0
原创粉丝点击