转自: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. android拾遗——四大基本组件介绍与生命周期

    Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器. 一:了解四大基本组件 Activity ...

  2. mysql 删除重复项

    DELETE FROM j_rank_rise_record WHERE id NOT IN ( SELECT id FROM ( SELECT * FROM j_rank_rise_record g ...

  3. vscode 配置import @ 路径提示及代码智提

    1.安装插件:Path Intellisense 2.配置: "path-intellisense.mappings": { "@": "${work ...

  4. 远程连接mysql root账号报错:2003-can't connect to MYSQL serve(转)

    远程连接mysql root账号报错:2003-can't connect to MYSQL serve 1.远程连接Linux系统,登录数据库:mysql -uroot -p(密码) 2.修改roo ...

  5. 一步一步写数据结构(BST-二叉排序树)

    二叉排序树的重要性不用多说,下面用c++实现二叉排序树的建立,插入,查找,修改,和删除.难点在于删除,其他几个相对比较简单. 以下是代码: #include<iostream> using ...

  6. Revit二次开发示例:DeleteDimensions

    在本例中,创建一个命令,实现删除所选中的尺寸标注. #region Namespaces using System; using System.Collections.Generic; using S ...

  7. Vue methods和computed

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. 如何正确使用 Django的User Model

    阅读目录(Content) django——重写用户模型 1.修改配置文件,覆盖默认的User模型 2.引用User模型 3.指定自定义的用户模型 4.扩展Django默认的User 5.自定义用户与 ...

  9. Struts2 (中)

    Struts中API介绍 ServletAPI 在使用Struts2的框架的过程中,发现Struts2和Servlet的API是解耦合的. 在实际开发中,经常使用到Servlet的API,比如进行登录 ...

  10. poj3537 Crosses and Crosses 博弈论

    大意: 给定一个\(1 * n\)的棋盘,你和对手轮流在上面画"X" 当出现三个连续的X时,最后一步操作的人胜利 不难发现,在棋盘中画了一个X之后 问题等价于两个一样的子游戏 然后 ...