每次设置 Android_Home 和 JAVA_HOME 变量需要 运行 "source ~/.profile" for Appium on MAC

To set Android_Home and JAVA_HOME variable every-time need to run "source ~/.profile" for Appium on MAC

我正在尝试 运行 Appium on MAC OS Mojave。 要查看我的配置是否正确,我正在使用 Appium Doctor。 它显示我的 ANDROID_HOME 和 JAVA_HOME 未设置。

一旦我在 ~/.profile 中设置它们,Appium Doctor 显示所有绿色,一切都很好。

现在的问题是每次我想创建新的 Appium 会话或关闭终端时,每次我都需要 运行 "source ~/.profile" 以前的设置工作正常。

如何解决这个问题?

这不是 Appium 问题。您的环境未保存在您的个人资料中。

当我们以交互式登录模式启动时,

~/.bash_profile 来源于 bash。这通常仅在您登录控制台时才会发生。

当您以图形方式登录时,~/.profile 将专门由启动终端的脚本获取。所以 ~/.bash_profile 不是来源 .

您应该将环境设置保存在 ~/.bash.profile 而不是

您应该在用户目录中的 .bash_profile.zshrc 文件中设置所需的环境变量,具体取决于您使用的是 bash 还是 zsh 作为 shell 在 mac/linux

执行 source ~/.bash_profile 并在下次打开终端时应用这些配置。

android 家的示例配置:

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

两个解决方案对我有用:

第一

在 IDE 本身中创建 Java_home 和 Android_Home 等环境变量,如果您使用的是 intelliJ,请参考:Setting up and using environment variables in IntelliJ Idea

第二

Create a new file ~/.zprofile
Type there source ~/.bash_profile
Save and close

现在环境应该保存在配置文件中,Appium 配置应该自动保存

如果您在 macOS Catalina 上设置 ANDROID_HOME 环境变量,.bash_profile 不再是 Apple 的默认值 shell,它不会保留您的路径变量。请改用 .zprofile 并按照 react-native 文档或其他文档中的环境设置说明进行操作。 .bash_profile 将继续创建新文件,该文件不会使路径永久化或持续关闭系统路径上的终端。

要创建新路径,只需在 macOS Big Sur 中执行以下操作:

  1. sudo touch ~/.zshrc
  2. sudo nano ~/.zshrc
  3. 导出所有路径
  4. ctrl + x 并保存
  5. source ~/.zshrc
  6. 检查echo $PATH