android maven插件在Eclipse中没有得到ANDROID_HOME env变量

Mer*_*ran 10 eclipse android environment-variables maven-plugin maven

我正在开发一个Android应用程序项目,它是一个Maven项目.当我尝试以"maven install"运行时,这就是我得到的:

"无法在项目android-client上执行目标com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.1.1:generate-sources(default-generate-sources):找不到Android SDK路径你可以在pom文件的插件配置部分使用...或...或在命令行上使用-Dandroid.sdk.path = ...或通过设置环境变量ANDROID_HOME - > [Help 1]进行配置"

如果我将我的android_home路径硬编码到pom.xml,它工作正常,但我们使用git,每个人可能有不同的路径android_home.why没有android-maven-plugin在eclipse中获取env变量?

android_home env变量在我的PATH中.我在我的pom.xml中写了$ {env.ANDROID_HOME},但它仍然无效.

奇怪的是,如果我使用终端(mvn安装)作为maven安装运行,它的工作原理!

实际上这对我来说是非常可选的问题,但我仍然想知道为什么这个插件在Eclipse中不起作用.

gau*_*nky 5

确保您的Android SDK安装包含您在pom.xml上配置相同API版本的库.

例如,如果您的配置XML如下所示:

<plugin>
    <groupId>com.jayway.maven.plugins.android.generation2</groupId>
    <artifactId>android-maven-plugin</artifactId>
    ...
    <configuration>
        <sdk>
            <path>${env.ANDROID_HOME}</path>
            <platform>8</platform>
        </sdk>
        ...
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

那么您应该使用Android SDK Manager(或直接检查您的文件系统:$ ANDROID_HOME/platforms)验证您安装了SDK API 8.当然,您也可以更改pom.xml以匹配安装的库.


tom*_*ozb 5

如果您使用的是Linux,在出口ANDROID_HOME.bashrc可能无法正常工作.

export ANDROID_HOME=/home/toro/etc/android-sdk-linux
Run Code Online (Sandbox Code Playgroud)

对我来说,只有当我ANDROID_HOME/etc/environment文件中导出时才有效:

ANDROID_HOME=/home/toro/etc/android-sdk-linux
Run Code Online (Sandbox Code Playgroud)

您必须重新启动计算机才能使其正常工作.

您只需注销,然后再次登录以在系统范围内应用环境变量.(可选)您可以在本地使用它来测试它,然后再执行此操作:$source /etc/environment


nmw*_*nmw 4

您需要为 ANDROID_HOME 创建一个系统变量,而不是将其设置在您的 PATH 中。

  • 我做了“export ANDROID_HOME=sdk 的路径”并将其添加到 PATH 中。我还应该做点什么吗?感谢您的回答。 (7认同)