转自: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. ABP zero 3.2 发布

    v3.2.0 (2017-03-07) Common Tenant based UI customizations (allow tenants to upload custom CSS and lo ...

  2. Android 客户端 okhttp3 与服务器之间的双向验证

    [原文]https://blog.csdn.net/leng_wen_rou/article/details/58596142 本篇是Android 客户端基于okhttp3的网络框架 和后台服务器之 ...

  3. Java学习(Map接口)

    一.概述: 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图. 1. Collection中的集合,元素是孤立存在的(理解为单身), ...

  4. bzoj 1271

    思路:因为被占奇数次的点只有一个, 那么我们可以将数轴分成两部分,奇数次点之前的前缀和为偶数,之后的前缀和为奇数, 然后就可以二分了. #include<bits/stdc++.h> #d ...

  5. 在VMware虚拟机中安装Mac OS 操作系统

    1. 安装VMware 我这里是安装VMWARE12.exe,其他的版本我不知道是否可以正常运行,最好大家安装12版本的比较好. 2. 安装 Mac OS X Unlocker for VMware ...

  6. Docker应用系列(六)| 如何去掉sudo及避免权限问题

    一.如何在使用docker时去掉sudo 1.添加账户 $ sudo groupadd docker 2.授权给docker账户 sudo gpasswd -a yourname docker 3.重 ...

  7. [python]缓存函数结果进redis

    工作中遇到一个问题,就是有一些需要对数据库做全表扫描,而且对结果要求比较宽松的地方,总觉得可以找地方优化,比如暂时保存计算结果. 首先想起来的就是functools.lru_cache,但是可惜在py ...

  8. Here is a 10-line template that can solve most 'substring' problems子字符串问题的模板

    转载自leetcode评论区:https://discuss.leetcode.com/topic/30941/here-is-a-10-line-template-that-can-solve-mo ...

  9. 掩码计算工具netmask

    掩码计算工具netmask   在网络扫描和防火墙配置中,经常需要计算IP地址范围和对应的掩码.为了简化这个过程,Kali Linux预置了一个掩码计算工具netmask.该工具不仅可以根据IP地址范 ...

  10. [CF1086E]Beautiful Matrix(容斥+DP+树状数组)

    给一个n*n的矩阵,保证:(1)每行都是一个排列 (2)每行每个位置和上一行对应位置不同.求这个矩阵在所有合法矩阵中字典序排第几.考虑类似数位DP的做法,枚举第几行开始不卡限制,那么显然之前的行都和题 ...