使用android maven编译错误
因此,在使用maven的android插件时,我遇到了一个编译错误使用android maven编译错误,android,maven,pom.xml,android-maven-plugin,Android,Maven,Pom.xml,Android Maven Plugin,因此,在使用maven的android插件时,我遇到了一个编译错误 [DEBUG] ANDROID-040-000: Executed command: Commandline = /bin/sh -c cd /Users/adrian/Development/projects/GogoDroid && /Users/adrian/Development/bin/android-sdk-macosx/platform-tools/aapt package -f -M /Users
[DEBUG] ANDROID-040-000: Executed command: Commandline = /bin/sh -c cd /Users/adrian/Development/projects/GogoDroid && /Users/adrian/Development/bin/android-sdk-macosx/platform-tools/aapt package -f -M /Users/adrian/Development/projects/GogoDroid/AndroidManifest.xml -S /Users/adrian/Development/projects/GogoDroid/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/org.holoeverywhere_library_apklib_1.4.0/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/com.actionbarsherlock_actionbarsherlock_apklib_4.2.0/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/com.facebook.android_Facebook_apklib_3.0.0/res --auto-add-overlay -A /Users/adrian/Development/projects/GogoDroid/target/generated-sources/combined-assets/assets -I /Users/adrian/Development/bin/android-sdk-macosx/platforms/android-16/android.jar -F /Users/adrian/Development/projects/GogoDroid/target/gogodroid.ap_, Result = 1
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 58.008s
[INFO] Finished at: Thu Dec 20 02:47:51 PST 2012
[INFO] Final Memory: 18M/123M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.4.1:apk (default-apk) on project gogodroid: MojoExecutionException: ANDROID-040-001: Could not execute: Command = /bin/sh -c cd /Users/adrian/Development/projects/GogoDroid && /Users/adrian/Development/bin/android-sdk-macosx/platform-tools/aapt package -f -M /Users/adrian/Development/projects/GogoDroid/AndroidManifest.xml -S /Users/adrian/Development/projects/GogoDroid/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/org.holoeverywhere_library_apklib_1.4.0/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/com.actionbarsherlock_actionbarsherlock_apklib_4.2.0/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/com.facebook.android_Facebook_apklib_3.0.0/res --auto-add-overlay -A /Users/adrian/Development/projects/GogoDroid/target/generated-sources/combined-assets/assets -I /Users/adrian/Development/bin/android-sdk-macosx/platforms/android-16/android.jar -F /Users/adrian/Development/projects/GogoDroid/target/gogodroid.ap_, Result = 1 -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.4.1:apk (default-apk) on project gogodroid:
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.maven.plugin.MojoExecutionException:
at com.jayway.maven.plugins.android.phase09package.ApkMojo.generateIntermediateApk(ApkMojo.java:1103)
at com.jayway.maven.plugins.android.phase09package.ApkMojo.execute(ApkMojo.java:287)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 19 more
Caused by: com.jayway.maven.plugins.android.ExecutionException: ANDROID-040-001: Could not execute: Command = /bin/sh -c cd /Users/adrian/Development/projects/GogoDroid && /Users/adrian/Development/bin/android-sdk-macosx/platform-tools/aapt package -f -M /Users/adrian/Development/projects/GogoDroid/AndroidManifest.xml -S /Users/adrian/Development/projects/GogoDroid/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/org.holoeverywhere_library_apklib_1.4.0/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/com.actionbarsherlock_actionbarsherlock_apklib_4.2.0/res -S /Users/adrian/Development/projects/GogoDroid/target/unpack/apklibs/com.facebook.android_Facebook_apklib_3.0.0/res --auto-add-overlay -A /Users/adrian/Development/projects/GogoDroid/target/generated-sources/combined-assets/assets -I /Users/adrian/Development/bin/android-sdk-macosx/platforms/android-16/android.jar -F /Users/adrian/Development/projects/GogoDroid/target/gogodroid.ap_, Result = 1
at com.jayway.maven.plugins.android.CommandExecutor$Factory$1.executeCommand(CommandExecutor.java:339)
at com.jayway.maven.plugins.android.phase09package.ApkMojo.generateIntermediateApk(ApkMojo.java:1099)
... 22 more
[ERROR]
[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
➜ GogoDroid git:(feature/build_script) ✗ mvn -v
Apache Maven 3.0.4 (r1232337; 2012-01-17 00:44:56-0800)
Maven home: /usr/local/Cellar/maven/3.0.4/libexec
Java version: 1.6.0_29, vendor: Apple Inc.
Java home: /Library/Java/JavaVirtualMachines/1.6.0_29-b11-402.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x", version: "10.7.5", arch: "x86_64", family: "mac"
有人知道发生了什么事吗?我注意到的另一件奇怪的事情是,在构建实际失败之前,似乎有很多奇怪的资源调试消息
(实际故障前的消息)
提前谢谢你的帮助
更新1-这里是pom供参考,我刚刚将插件更新为3.5.0,但仍然看到相同的错误。这仍然与资源有关。看起来像
<?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>
<packaging>apk</packaging>
<!-- Omitted Group Info -->
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>4.1.1.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.holoeverywhere</groupId>
<artifactId>library</artifactId>
<version>1.4.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>1.5.2</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.roboguice</groupId>
<artifactId>roboguice</artifactId>
<version>2.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>net.hockeyapp.android</groupId>
<artifactId>HockeySDK</artifactId>
<version>2.2.1</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.amber</groupId>
<artifactId>amber-oauth2-client</artifactId>
<version>0.22-incubating</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>com.actionbarsherlock</groupId>
<artifactId>actionbarsherlock</artifactId>
<version>4.2.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>com.github.kevinsawicki</groupId>
<artifactId>urbanairship-lib</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>com.google.android.maps</groupId>
<artifactId>maps</artifactId>
<version>16_r3</version>
<scope>provided</scope>
</dependency>
<!-- <dependency>
<groupId>android.support</groupId>
<artifactId>compatibility-v4</artifactId>
<version>11</version>
</dependency> -->
<dependency>
<groupId>com.androidquery</groupId>
<artifactId>aquery</artifactId>
<version>0.22.10</version>
</dependency>
<dependency>
<groupId>com.commonsware.cwac.adapter</groupId>
<artifactId>AdapterWrapper</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.commonsware.cwac.endless</groupId>
<artifactId>EndlessAdapter</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.facebook.android</groupId>
<artifactId>Facebook</artifactId>
<version>3.0.0</version>
<exclusions>
<exclusion>
<groupId>android.support</groupId>
<artifactId>compatibility-v4</artifactId>
</exclusion>
</exclusions>
<type>apklib</type>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<sourceDirectory>src</sourceDirectory>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.5.0</version>
<extensions>true</extensions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<configuration>
<sdk>
<path>/Users/adrian/Development/bin/android-sdk-macosx</path>
<platform>4.1.2</platform>
</sdk>
<extractDuplicates>true</extractDuplicates>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
</plugin>
</plugins>
</build>
</project>
4.0.0
apk
com.google.android
安卓
4.1.1.4
假如
org.holoeverywhere
图书馆
1.4.0
apklib
乔达时间
乔达时间
1.5.2
罐子
org.roboguice
机器人向导
2
罐子
net.hockeyapp.android
曲棍球俱乐部
2.2.1
罐子
org.apache.amber
琥珀色oauth2客户端
0.22-孵化
罐子
com.actionbarsherlock
actionbarsherlock
4.2.0
apklib
com.github.kevinsawicki
城市航空图书馆
2.0.2
com.google.android.maps
地图
16_r3
假如
com.androidquery
水渠
0.22.10
com.commonware.cwac.adapter
适配器振打器
1
com.commonware.cwac.com
EndlessAdapter
1
com.facebook.android
脸谱网
3.0.0
android.support
兼容性-v4
apklib
${project.artifactId}
src
com.jayway.maven.plugins.android.generation2
安卓maven插件
3.5.0
真的
com.jayway.maven.plugins.android.generation2
安卓maven插件
/Users/adrian/Development/bin/android sdk macosx
4.1.2
真的
真的
更新2-看起来这是安卓Maven特有的问题,他抱怨我的9.patch图像不是真正的9.patch图像。Eclipse和Intellij很好地编译了APK。。。有人有办法让maven android表现得像Eclipse和Intellij吗?我觉得您使用的是旧版本的maven插件。用最新版本更新pom.xml并尝试编译
万一什么都不管用,请转到Jenkins->Workspace->中的项目,然后删除当前工作区并尝试创建新版本
这修复了执行异常:我的ANDROID-040-001。你能发布你的pom.xml吗?你能重新检查一下你的布局没有丢失任何图像吗…当我使用IntelliJ时,它编译得很好,除非我丢失了一些东西,它应该是一样的吗?可能重复刚才你说的。。。没用,还有其他建议吗?看起来跟这个问题有关,但我不确定解决办法是什么
<?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>
<packaging>apk</packaging>
<!-- Omitted Group Info -->
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>4.1.1.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.holoeverywhere</groupId>
<artifactId>library</artifactId>
<version>1.4.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>1.5.2</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.roboguice</groupId>
<artifactId>roboguice</artifactId>
<version>2.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>net.hockeyapp.android</groupId>
<artifactId>HockeySDK</artifactId>
<version>2.2.1</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.apache.amber</groupId>
<artifactId>amber-oauth2-client</artifactId>
<version>0.22-incubating</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>com.actionbarsherlock</groupId>
<artifactId>actionbarsherlock</artifactId>
<version>4.2.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>com.github.kevinsawicki</groupId>
<artifactId>urbanairship-lib</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>com.google.android.maps</groupId>
<artifactId>maps</artifactId>
<version>16_r3</version>
<scope>provided</scope>
</dependency>
<!-- <dependency>
<groupId>android.support</groupId>
<artifactId>compatibility-v4</artifactId>
<version>11</version>
</dependency> -->
<dependency>
<groupId>com.androidquery</groupId>
<artifactId>aquery</artifactId>
<version>0.22.10</version>
</dependency>
<dependency>
<groupId>com.commonsware.cwac.adapter</groupId>
<artifactId>AdapterWrapper</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.commonsware.cwac.endless</groupId>
<artifactId>EndlessAdapter</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.facebook.android</groupId>
<artifactId>Facebook</artifactId>
<version>3.0.0</version>
<exclusions>
<exclusion>
<groupId>android.support</groupId>
<artifactId>compatibility-v4</artifactId>
</exclusion>
</exclusions>
<type>apklib</type>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<sourceDirectory>src</sourceDirectory>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.5.0</version>
<extensions>true</extensions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<configuration>
<sdk>
<path>/Users/adrian/Development/bin/android-sdk-macosx</path>
<platform>4.1.2</platform>
</sdk>
<extractDuplicates>true</extractDuplicates>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
</plugin>
</plugins>
</build>
</project>