【问题标题】:gsutil CONFIG_REQUIRED import error?gsutil CONFIG_REQUIRED 导入错误?
【发布时间】:2013-09-22 06:52:16
【问题描述】:

我尝试安装并运行 gsutil 并收到以下错误:

Traceback (most recent call last):
  File "/Users/groovebug/gsutil/gsutil", line 88, in <module>
    sys.exit(gslib.__main__.main())
  File "/Users/groovebug/gsutil/gslib/__main__.py", line 93, in main
    command_runner = CommandRunner(config_file_list)
  File "/Users/groovebug/gsutil/gslib/command_runner.py", line 102, in __init__
    self.command_map = self._LoadCommandMap()
  File "/Users/groovebug/gsutil/gslib/command_runner.py", line 112, in _LoadCommandMap
    __import__('gslib.commands.%s' % module_name)
  File "/Users/groovebug/gsutil/gslib/commands/disablelogging.py", line 18, in <module>
    from gslib.command import CONFIG_REQUIRED
ImportError: cannot import name CONFIG_REQUIRED

我重装了,继续弄,没找到其他地方的人解决。

【问题讨论】:

    标签: google-cloud-storage gsutil


    【解决方案1】:

    gsutil 不再使用该变量。如果您更新到最新版本的 gsutil,则此问题将不再发生:

    gsuil 更新

    【讨论】:

    • 我今天从这个link下载了好几次。我尝试运行的每个命令都出现错误,包括更新和帮助。实际原因可能是旧的 .boto 文件或其他文件,因为一旦我添加了该行并且能够让它运行一次 gsutil config -b,即使我在同一个 tar 上重新运行 tar xfz gsutil.tar.gz -C $HOME,一切都开始正常运行。 (很抱歉,如果您收到重复的通知,我认为它会给我一个新行。)
    • 您确定运行的是从 gsutil.tar.gz 文件安装的新版本吗?例如,您是否可能在 PATH 的其他位置安装了较旧的 gsutil 并运行了那个?当前代码在任何地方都没有 CONFIG_REQUIRED,所以这是我能想到的唯一解释,为什么你会继续看到这个问题。
    • 我不是 100% 确定,但我很确定。我希望能够穿越时空回去检查一下。我在计算机上的任何地方都找不到 3.35 之前的版本。正如我上面所说,只要我能够让它运行一次,我就能够删除更改。 (但是一旦我能够让它运行一次,我就运行了更新)。但是,它输出我已经拥有最新版本。阅读您的答案后,我重建了 tar,这样做并没有解决问题。我在重建 tar 之前移动了工作文件夹。该变量的唯一出现是我添加的那个。是一个奇怪的错误。
    【解决方案2】:

    CONFIG_REQUIRED 只是字典中使用的键的常量名称。

    如果你打开 ${Directory_Containing_gsutil}/gsutil/gslib/command.py

    并添加行

    CONFIG_REQUIRED = 'config_required'
    

    它解决了问题。不知道为什么缺少那行。

    【讨论】:

      猜你喜欢
      • 2014-01-21
      • 2018-02-14
      • 2018-03-08
      • 2017-08-30
      • 2018-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-26
      相关资源
      最近更新 更多