2015-07-03 62 views
0

我开始了一个Android项目,默认情况下它是建立与ANT,我想将它升级到Maven这样我就可以摆脱我与Android SDK有编译时间问题,并便于图书馆的导入和管理。我所遇到的问题是:Maven的:从蚂蚁迁移Android项目到Maven

1)如何修改build.xml文件,以指导其使用Maven。 2)Maven抱怨文件夹结构不对。

这里是我的build.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<project name="myapp" default="help"> 
<property file="local.properties"/> 
    <property file="ant.properties"/> 
<property environment="env"/> 
    <condition property="sdk.dir" value="${env.ANDROID_HOME}"> 
     <isset property="env.ANDROID_HOME"/> 
    </condition> 
// and more 

所以我相信我不得不修改ant.properties属性,我怎么能建议使用Maven?

这是我在这个项目的父目录粘贴pom.xml的,但是当我尝试运行mvn编译,我得到以下错误:

Failed to execute goal com.jayway.maven.plugins.android.generation2:android-maven-plugin:4.0.0-rc.2:generate-sources (default-generate-sources) on project gs-maven-android: 
[ERROR] 
[ERROR] Found files or folders in non-standard locations in the project! 
[ERROR] ....This might be a side-effect of a migration to Android Maven Plugin 4+. 
[ERROR] ....Please observe the warnings for specific files and folders above. 
[ERROR] ....Ideally you should restructure your project. 
[ERROR] ....Alternatively add explicit configuration overrides for files or folders. 
[ERROR] ....Finally you could set failOnNonStandardStructure to false, potentially resulting in other failures. 
[ERROR] -> [Help 1] 
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. 
[ERROR] Re-run Maven using the -X switch to enable full debug logging. 
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles: 
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException 

最后,这里是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>org.hello</groupId> 
    <artifactId>MyAPP</artifactId> 
    <version>1.0</version> 
    <packaging>apk</packaging> 
    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>com.google.android</groupId> 
      <artifactId>android</artifactId> 
      <version>4.1.1.4</version> 
      <scope>provided</scope> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
       <artifactId>android-maven-plugin</artifactId> 
       <version>4.0.0-rc.2</version> 
       <configuration> 
        <sdk> 
         <platform>20</platform> 
        </sdk> 
        <undeployBeforeDeploy>true</undeployBeforeDeploy> 
       </configuration> 
       <extensions>true</extensions> 
      </plugin> 
      <plugin> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>3.1</version> 
       <configuration> 
        <source>1.8</source> 
        <target>1.8</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

那么我在这里做错了什么?你能帮忙的话,我会很高兴。我在Ubuntu Linux上使用Intellij Idea。谢谢。

回答

0

请升级到完整版本的版本,然后更新后的错误消息。最新版本是4.3.0。

该警告是关于源代码和其他来源位于在非标准的文件夹。你应该使用标准结构。完整版本将显示错误消息,其中包含所有内容的详细信息。