【问题标题】:nativescript installation don't work everywherenativescript 安装并不适用于任何地方
【发布时间】:2017-07-17 20:59:29
【问题描述】:

我是 nativescript 的初学者,我已经正确安装了 ANDROID_HOME 环境变量,它在 echo $ANDROID_HOME 之后返回我的 sdk 路径 但尽管如此它返回我 未设置 ANDROID_HOME 环境变量或它指向不存在的目录。您将无法为 Android 执行任何与构建相关的操作

但如果我将我的项目与 sdk 目录 放在同一目录中,它会返回给我 无法通过提供的索引或标识符解析指定的连接设备。要列出当前连接的设备并验证指定的索引或标识符是否存在,请运行 'tns device'

我还注意到,在每台计算机重新启动后环境变量消失,我必须恢复相同的进程,我已经为 环境变量编辑.profile file, .bashrc file and zshrc file 我有相同的结果

请告诉我出了什么问题...提前谢谢

【问题讨论】:

    标签: nativescript android-sdk-2.3


    【解决方案1】:

    我的 ~./bashrc 文件

    export ANDROID_HOME=/home/user/Android/Sdk 
    export PATH=$PATH:/home/user/Android/Sdk/tools 
    export PATH=$PATH:/home/user/Android/Sdk/platform-tools 
    export LD_LIBRARY_PATH=/home/user/Android/Sdk/emulator/lib64
    

    在 /home/user/Android/Sdk 中应该是 toolsplatform-tools 文件夹。

    这对我来说已经足够了。 (Linux Mint 18)

    也许这些信息对某人有用:

    Linux 环境变量配置文件

    .bashrc

    此文件是特定用户的变量。每次用户创建终端会话时都会加载它,也就是说,打开一个新终端。每次新的终端会话开始时,此文件中创建的所有环境变量都会生效。

    .bash_profile

    每次用户通过 SSH 远程连接时,这些变量都会生效。如果此文件丢失,系统将查找 .bash_login 或 .profile。

    /etc/environment

    此文件用于在系统级别创建、编辑和删除任何环境变量。此文件中创建的环境变量可用于整个系统、每个用户甚至远程连接。

    /etc/bash.bashrc

    系统 bashrc。该文件为每个用户执行,每次他创建一个新的终端会话。这仅适用于本地用户,当通过 Internet 连接时,这些变量将不可见。

    /etc/profile

    系统文件配置文件。系统上的任何用户只有远程输入才能访问此文件中的所有变量。但是在创建本地终端会话时它们将不可用,也就是说,如果您只是打开终端。

    使用这些文件创建的所有 Linux 环境变量只能通过从那里删除它们来删除。仅在每次更改后,您需要注销并登录,或者执行此命令:

    $ source file_name
    

    所以,环境变量可以是三种类型:

    1. 本地环境变量

    这些变量只为当前会话定义。会话完成后,无论是远程访问还是终端仿真器,它们都将被不可挽回地删除。它们不存储在任何文件中,而是使用特殊命令创建和删除。

    1. 自定义 shell 变量

    Linux 中的这些 shell 变量是为特定用户定义的,并在每次使用本地终端登录或远程连接时加载。此类变量通常存储在配置文件中:.bashrc、.bash_profile、.bash_login、.profile 或位于用户目录中的其他文件中。

    1. 系统环境变量

    这些变量在整个系统中可供所有用户使用。它们在系统启动时从系统配置文件中加载:/etc/environment、/etc/profile、/etc/profile.d//etc/bash.bashrc。

    【讨论】:

      【解决方案2】:

      如果您使用 nvm 管理不同的 nodejs 版本,请尝试禁用 nvm 并仅使用一个全局 nodejs 版本。

      关于易变的环境变量,请确保您找到正在解析的正确配置文件并将您的更改放在那里。

      如果您能更具体地了解您当前的平台,将会有所帮助。然后,人们将能够更准确地做出响应。

      【讨论】:

      • 嗨,谢谢,首先我使用 gobale nodejs 版本,其次这是 .bashrc,这是我的 goo 文件,是他返回我的 sdk 路径,我在 ubuntu 上17.04 平台,提前致谢
      • .bashrc 中的 android 路径是否包含 ~?作为主文件夹?如果是的话,你需要完整的路径@tnbsoftlab
      • 这是我导出到 export ANDROID_HOME=~/Android/Sdk 的路径echo $ANDROID_HOME return ** /home/tnbsoftlab/Android/Sdk** 我还注意到,在每台计算机重新启动后,环境变量都会消失,每次我不知道为什么时我都必须重复相同的过程......提前致谢
      • @MarekMaszay 现在我将我的 sdk_path 更改为 export ANDROID_HOME=/home/tnbsoftlab/Android/Sdk 但我有相同的结果...如果我的错误是错误的,请给我一个路径示例,也我的项目只有在与 sdk 目录在同一目录下才可以正常工作吗?
      【解决方案3】:

      嗨,我通过添加 profile file 环境变量来解决我的问题

      export ANDROID_HOME=~/Android/Sdk

      export ANDROID_HOME=~/Android/Sdk/tools

      export ANDROID_HOME=~/Android/Sdk/platforms-tools

      然后我在.bashrc file(我认为这是问题来源)中删除了所有命令行条目生成的所有路径。终于成功了,非常感谢大家的帮助

      【讨论】:

        猜你喜欢
        • 2015-09-25
        • 2016-12-30
        • 1970-01-01
        • 2012-07-27
        • 2017-07-25
        • 1970-01-01
        • 2023-01-26
        • 1970-01-01
        • 2021-01-23
        相关资源
        最近更新 更多