Appium Doctor - 无法在 MacOS 10.12 上将 $JAVA_HOME/bin 设置为 PATH 变量

Posted

技术标签:

【中文标题】Appium Doctor - 无法在 MacOS 10.12 上将 $JAVA_HOME/bin 设置为 PATH 变量【英文标题】:Appium Doctor - unable to set $JAVA_HOME/bin into PATH variable on MacOS 10.12 【发布时间】:2017-03-06 23:32:25 【问题描述】:

在 MacOS 10.12 上用 npm 安装了 appium doctor,它给了我一个错误:

WARN AppiumDoctor ✖ Bin directory for $JAVA_HOME is not set.

到目前为止,我已尽我所能,请帮助。 这是我的 .bash_profile:

export android_HOME="/Users/sergei/Library/Android/sdk/"
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH
export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
export M2_HOME="/Users/sergei/Desktop/1246702 Sergio/apache-maven-3.3.9"
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
export JYTHON_HOME="/Users/sergei/jython2.7.0/"
export JYTHON=JYTHON_HOME/bin
export PATH=JYTHON:$PATH

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

【问题讨论】:

自己解决了 你能发布你的解决方案吗? 【参考方案1】:

尝试添加完整路径,即 /Users/'your name'/Library/.......

这对我有用。

【讨论】:

【参考方案2】:

尝试重新启动系统!我有同样的问题,它得到了解决。 我什至遇到了其他 appium 问题,但通过重新启动又得到了解决。

【讨论】:

【参考方案3】:

在这里留下解决方案,以防有人在 Mac Catalina 中遇到类似问题,在运行 Appium C# 脚本来初始化 Android 驱动程序时。尝试修复许多答案中提到的 .bash_profile 和 .zprofile 文件,但似乎没有任何效果。

然后,决定以编程方式显式设置ANDROID_HOME和JAVA_HOME环境变量,在初始化Android驱动之前,终于成功了:

Environment.SetEnvironmentVariable("ANDROID_HOME", "/Users/username/Library/Android/sdk");
Environment.SetEnvironmentVariable("JAVA_HOME", "/Library/Java/JavaVirtualMachines/jdk-14.0.1.jdk/Contents/Home");

【讨论】:

【参考方案4】:

Appium for Mac 的 Android 和 JAVA 路径设置:

打开终端并输入vi ~/.profile(如果需要超级用户权限,请使用 sudo)-> 这将打开配置文件。

单击iinsert 按钮编辑文件。 将以下内容添加到 .profile 文件中(根据您的 SDK 安装路径更改 Android Home):

export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin:$PATH
export ANDROID_HOME=/Users/<userdirectory>/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

单击 ESC 按钮和:wq 并回车(将保存更改并退出文件。)

在终端输入:source ~/.profile(将更改应用到.profile 文件)

测试配置:

在终端输入:$echo JAVA_HOME(检查输出,并测试我们在.profile文件中配置的其他值)

现在再次运行查看状态:appium-doctor --android

【讨论】:

【参考方案5】:

终端:vim .bash_profile export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home export PATH=$JAVA_HOME/bin:$PATH export ANDROID_HOME=/Users/sharadgupta/Documents/sdk export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

仅在 4 行以上添加

【讨论】:

欢迎来到 ***,感谢您的贡献!这是一个已经回答的问题的答案。请查收:***.com/help/how-to-answer【参考方案6】:

Appium GUI 中有一个设置菜单(Mac 上的“编辑配置”),您可以在其中输入路径。这就是为我解决的问题。

【讨论】:

【参考方案7】:

对此的答案是将 C:\Program Files\Java\jdk-14.0.1\bin 添加到您的 PATH 变量中。

它不是在抱怨 JAVA_HOME,它只是希望将 bin 目录添加到路径中。

然后以管理员身份重新启动命令行。 我意识到这是针对 Windows 的,但我认为这与我遇到的问题相同。

【讨论】:

【参考方案8】:

~/.bash_profile 中添加JAVA_HOMEANDROID_HOME 后对我来说 文件为exportPATH

export ANDROID_HOME=/Library/YourUserName/Library/Android/sdk
export PATH="$PATH:$ANDROID_HOME:$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools"

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
export PATH="$PATH:$JAVA_HOME/bin"

在你的终端输入这个

source ~/.bash_profile

我仍然需要重新启动 Appium 服务器然后它才能工作。

但 Appium 提供了简单的功能来节省用户时间 打开 Appium 应用 然后您可以点击 "Edit Configurations" 按钮 将出现一个对话框/弹出窗口,您可以在其中添加两个参数

ANDROID_HOME JAVA_HOME

editText 中的路径(同上)。然后点击"Save and Restart" 再次点击弹出窗口中的"restart now"按钮,然后 一旦 Appium 重新启动,你就完成了 无需处理 bash_profile 或任何命令

【讨论】:

谢谢!出于某种原因,Appium 无法从我的 bash_profile 中读取 JAVA_HOME 路径,但从 Edit Configuration 菜单中该字段为空,当我粘贴 /Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home 时,它​​开始工作。 什么是“Appium 应用程序”?我已经安装了 Appium,除了命令行工具什么都没有。【参考方案9】:

macOS Mohave,v.10.14.6。

    vim ~/.bash_profile

    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home

    导出 PATH=$JAVA_HOME/bin:$PATH

【讨论】:

【参考方案10】:
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin:$PATH

【讨论】:

【参考方案11】:

我的问题是我忘记关闭终端并重新启动它。在环境变量中将JAVA_HOME/Bin 添加到PATH 后,单击确定并关闭,不要忘记关闭所有终端。

再次打开终端后,它应该会更新,运行 appium-doctor 会看到更新后的环境变量。

【讨论】:

【参考方案12】:

很多正确答案应该对某些人有用,而不是对某些人有用。

我建议尝试官方开发者支持的解决方案。

JAVA_HOME=/usr/java/j2sdk1.5.0

export JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH;

export PATH

试试这个应该像一个魅力。 [https://docs.oracle.com/cd/E19575-01/820-5019/ghhls/index.html][1]

【讨论】:

【参考方案13】:

我尝试了不同的方法,一切正常,但这个文件“$JAVA_HOME 的 Bin 目录未设置”仍然存在。之后我在bash中写了npm uninstall appium-doctor,之后一切正常……你可以尝试卸载,然后npm install appium-doctor

【讨论】:

【参考方案14】:

我犯了一个新手错误,想在这里添加它,这样人们就不会重复我的错误。

我没有导出 $PATH 和 $JAVA_HOME,而是从我的 /etc/environment 文件中获取它。结果,当我使用 echo 时两者都显示正确,但我的 Appium 安装找不到它。

然后我发现了这个:Unix: What is the difference between source and export?

基本上,您必须从 bashrc 中导出变量,以便将它们添加到您的全局环境中,然后 appium 可以访问它。

【讨论】:

【参考方案15】:

这看起来是一个旧帖子,但对于未来的观众,我发现 this solution 更好,因为它没有硬编码 java sdk 路径。

JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin:$PATH

【讨论】:

【参考方案16】:

我从路径中删除了双引号并从末尾删除了斜杠 现在这对我来说很好用:

export ANDROID_HOME=/Users/sergei/Library/Android/sdk
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

【讨论】:

【参考方案17】:

我需要添加

export PATH=$JAVA_HOME/bin:$PATH

到 ~/.bash_profile 并重启终端

【讨论】:

确保 JAVA_HOME 的路径末尾没有斜杠 /,这也是导致我出错的原因。

以上是关于Appium Doctor - 无法在 MacOS 10.12 上将 $JAVA_HOME/bin 设置为 PATH 变量的主要内容,如果未能解决你的问题,请参考以下文章

appium----已解决Mac安装sudo npm install -g appium-doctor总是提示“Err

关于appium-doctor运行时提示不是内部或外部的命令

Appium+python自动化54-appium-doctor报错已解决(SyntaxError: Unexpected token ...)

appium-doctor

在mac的终端上输入appium-doctor,提示xcode报错,明明是在App Store上安装的,求大神们帮忙

appium---Macappium-doctor提示WARN:“fbsimctl cannot be found”解决方案