转自:http://blog.csdn.net/luhuajcdd/article/details/8132386

手动的创建自己的android application

 

1.用android tool 创建项目。

android create project \
--target <target_ID> \
--name <your_project_name> \
--path path/to/your/project \
--activity <your_activity_name> \
--package<your_package_namespace>
  • target is the "build target" for your application. It corresponds to an Android platform library (including any add-ons, such as Google APIs) that you would like to build your project against. To see a list of available targets and their corresponding IDs, execute: android list targets.
  • name is the name for your project. This is optional. If provided, this name will be used for your .apk filename when you build your application.
  • path is the location of your project directory. If the directory does not exist, it will be created for you.
  • activity is the name for your default Activity class. This class file will be created for you inside<path_to_your_project>/src/<your_package_namespace_path>/ . This will also be used for your .apk filename unless you provide a name.
  • package is the package namespace for your project, following the same rules as for packages in the Java programming language.

例如:创建一个 name:MyAndroidMavenApp; path:E:\app\myapp; activity: MainActivity package: com.example.mvnandroid 的android项目。

 android create project --target 1 --name MyAndroidMavenApp --path E:\app\myapp --activity MainActivity --package com.example.mvnandroid

注意:前提已经在系统环境中配置android home 和 android tool

参考:http://blog.csdn.net/luhuajcdd/article/details/8132429

2.在项目根目录中创建一个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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  3. <modelVersion>4.0.0</modelVersion>  
        <!--包名-->
  4. <groupId>com.example.mvnandroid</groupId>  
        <!---项目名-->
  5. <artifactId>amvn_test</artifactId>
  6. <version>1.0.0-SNAPSHOT</version>  
        <!--打包为apk包-->
  7. <packaging>apk</packaging>
  8. <name>amvn_t</name>
  9. <dependencies>
  10. <dependency>
  11. <groupId>com.google.android</groupId>
  12. <artifactId>android</artifactId>
  13. <version>2.3.3</version>
  14. <scope>provided</scope>
  15. </dependency>
  16. </dependencies>
  17. <build>
  18. <finalName>${project.artifactId}</finalName>
  19. <sourceDirectory>src</sourceDirectory>
  20. <pluginManagement>
  21. <plugins>
  22. <plugin>
  23. <groupId>com.jayway.maven.plugins.android.generation2</groupId>
  24. <artifactId>android-maven-plugin</artifactId>
  25. <version>3.2.0</version>
  26. <extensions>true</extensions>
  27. </plugin>
  28. </plugins>
  29. </pluginManagement>
  30. <plugins>
  31. <plugin>
  32. <groupId>com.jayway.maven.plugins.android.generation2</groupId>
  33. <artifactId>android-maven-plugin</artifactId>
  34. <configuration>
  35. <run>
  36. <debug>true</debug>
  37. </run>
  38. <sdk>
  39. <path>${env.ANDROID_HOME}</path>
  40. <platform>10</platform>  <!--当前项目的sdk版本-->
  41. </sdk>
  42. <emulator>
  43. <avd>emulator-5554_android</avd>
  44. </emulator>
  45. <undeployBeforeDeploy>true</undeployBeforeDeploy>
  46. </configuration>
  47. </plugin>
  48. </plugins>
  49. </build>
  50. </project>

3. 在命令中创建的项目生产了一些文件, 在用android maven plugin 的时候, 有些文件是不需要的。

rm -r bin build.xml build.properties libs

4.构建项目

到项目MyAndroidMavenApp 的根目录:

mvn clean install

可能出现的错误:

1.  Failed to execute goal on project amvn_test: Could not resolve dependencies for project com.example.mvnandroid:amvn_tes
droid:jar:4.1 in central (http://repo.maven.apache.org/maven2) ->

  1. <span style="white-space:pre">  </span><dependency>
  2. <groupId>com.google.android</groupId>
  3. <artifactId>android</artifactId>
  4. <version>4.1</version>
  5. <scope>provided</scope>
  6. </dependency>

原因:dependency中version = 4.1 太高了,没有找到。 要修改。2.3.3是可以的

注意:您的系统必须已经有mvn, 配置过环境变量

下载mvn:http://maven.apache.org/download.html

配置mvn 环境:http://www.cnblogs.com/smile2010/archive/2011/11/22/2259535.html

5.部署apk到连接的设备或模拟器上

mvn android:deploy

可以出现的错误:

No plugin found for prefix 'anroid' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories [local (C:\Users\hlu\.m2\repository),
central (http://repo.maven.apache.org/maven2)] -> [Help 1]

解决方法:

在C:\Users\hlu\.m2\repository\settings.xml中增加如下配置

    1. <pluginGroups>
    2. <!-- pluginGroup
    3. | Specifies a further group identifier to use for plugin lookup.
    4. <pluginGroup>com.your.plugins</pluginGroup>
    5. -->
    6. <pluginGroup>com.jayway.maven.plugins.android.generation2</pluginGroup>
    7. </pluginGroups>

android之使用mvn构建创造项目步骤的更多相关文章

  1. xfire构建webservice项目步骤以及使用

    简单搭建xfire开源软件的webservice开发及其步骤: 1.创建好一个web工程,引入xfire下的jar包,注意lib下的和xfire-all.jar 2.定义接口: package com ...

  2. eclipse通过maven构建web项目步骤说明

    1.  File -> New -> Other ,搜索maven,选择Maven Project,点击Next 2.这里不需要改继续Next 3.这里需要注意,需要选择maven-arc ...

  3. maven(3)------maven构建web项目详细步骤

    eclipse集成工具,轻松通过maven构建web项目步骤如下: 一, 右键,new -->project, 进入下一页面 二,选择"Maven Project", 点击下 ...

  4. maven构建java项目、web项目

    maven构建java项目.web项目 一.mvn构建web项目 1安装mvn(包括path) 2命令:mvn archetype:create -DgroupId=cn.edu.sdau.neat ...

  5. Python Flask项目步骤

    构建flask项目步骤 步骤一:构建基础项目框架 创建manage.py文件 from flask import Flask app = Flask(__name__) ""&qu ...

  6. 如何在Android的ListView中构建CheckBox和RadioButton列表(支持单选和多选的投票项目示例)

    引言 我们在android的APP开发中有时候会碰到提供一个选项列表供用户选择的需求,如在投票类型的项目中,我们提供一些主题给用户选择,每个主题有若干选项,用户对这些主题的选项进行选择,然后提交. 本 ...

  7. Android Studio 快速实现上传项目到Github(详细步骤)

    前言: 本文主要讲解如何将Android Studio项目上传至GitHub,在此之前,先介绍几个概念. Android Studio:是谷歌推出一个Android集成开发工具,基于IntelliJ ...

  8. jenkins构建java项目找不到命令mvn,java的解决方法

    jenkins构建java项目时出现的报错情况: $ mvn clean install FATAL: command execution failed java.io.IOException: er ...

  9. Android H5混合开发(1):构建Cordova 项目

    Cordova是什么 Apache Cordova是一个开源的移动开发框架.允许你用标准的web技术-HTML5,CSS3和JavaScript做跨平台开发. 以移动平台为例,安卓.IOS平台设备的常 ...

随机推荐

  1. day7 socket网络编程

    Python Socket网络编程 Socket是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于Socket来完成通信的 ...

  2. bzoj 1295 1295: [SCOI2009]最长距离

    思路:对于每个点出发bfs做一次dp, dp[ i ][ j ][ k ] 表示从枚举的该点能不能经过k个障碍物到达(i , j). #include<bits/stdc++.h> #de ...

  3. elastucasearch基础理论以及安装

    一.elasticasearch核心概念 Near Realtime(NRT 近实时) Elasticsearch 是一个近实时的搜索平台.您索引一个文档开始直到它被查询时会有轻微的延迟时间(通常为1 ...

  4. 【Java】 int与String类型间的相互转化

    public class Test { public static void main(String[] args) { /* * int类型转String类型 */ int n1 = 9; //1. ...

  5. hdoj2191 珍惜现在,感恩生活(01背包 || 多重背包)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=2191 思路 由于每种大米可能不止一袋,所以是多重背包问题,可以直接使用解决多重背包问题的方法,也可以将 ...

  6. CentOS通过光盘启动救援数据

    (1).CentOS6 1)首先确保实体机有光盘,虚拟机有光盘镜像.并通过BIOS设置从光盘启动,实体机请通过提示进入BIOS,虚拟机请找到上方菜单中虚拟机-->电源-->打开电源时进入固 ...

  7. HTTP 499 状态码 nginx下 499错误[转]

    日志记录中HTTP状态码出现499错误有多种情况,我遇到的一种情况是nginx反代到一个永远打不开的后端,就这样了,日志状态记录是499.发送字节数是0. 老是有用户反映网站系统时好时坏,因为线上的产 ...

  8. GIT(1)----更新代码和上传代码操作的步骤

    1.第一次下载代码 a.首先获得下载的地址,可从服务器,或者GitHut上获得.例如http://100.211.1.110:21/test/test.git b.终端里切换到想要将代码存放的目录,在 ...

  9. MYSQL用户操作管理大杂烩

    一.创建用户 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该 ...

  10. Oracle | 给表和字段添加注释

    comment  on  column  表名.字段名   is  '注释内容'; comment on column OPERATOR_INFO.MAIN_OPER_ID is '归属操作员'; c ...