Travis CI上没有名为pip的模块

时间:2018-01-03 09:50:26

标签: python python-3.x travis-ci

我的项目使用Java(8)和Python(2.7,3.6)进行多语言构建。我正在尝试使用Travis CI设置一个持续集成系统,但我在构建脚本上运行pip时出现问题,因为Travis CI一直告诉我:

/usr/bin/python3: No module named pip

我用一个非常简单的构建脚本尝试了这个:

python3 -m pip --version

我也尝试在Python 3中直接调用pip作为pip3但是我得到了另一个错误,说明在下面的Python安装中有类似模块pip的东西(包含版本3.6和3.6的列表)。 3)。

我有以下矩阵来设置我的构建环境:

matrix:
    include:
        - language: java
          jdk: openjdk8
        - language: python
          python:
              - 2.7
              - 3.6

我期待在这里指定Python 3.6将设置pip以及如果我理解正确的话,自3.4以来就是这样。我还缺少什么?

更新

根据我之前收到的回复,我在before_script脚本中添加了以下内容:

before_script:
    - python2.7 -m pip || wget https://bootstrap.pypa.io/get-pip.py | python2.7
    - python3 -m pip || wget https://bootstrap.pypa.io/get-pip.py | python3

但我仍然遇到同样的错误:

$ python2.7 -m pip || wget https://bootstrap.pypa.io/get-pip.py | python2.7 
pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)

$ python3 -m pip || wget https://bootstrap.pypa.io/get-pip.py | python3 
/usr/bin/python3: No module named pip
--2018-01-03 11:52:33--  https://bootstrap.pypa.io/get-pip.py
Resolving bootstrap.pypa.io (bootstrap.pypa.io)... 151.101.0.175,
151.101.64.175, 151.101.128.175, ... 
Connecting to bootstrap.pypa.io (bootstrap.pypa.io)|151.101.0.175|:443... connected. 
HTTP request sent, awaiting response... 200 OK 
Length: 1595408 (1.5M) [text/x-python] Saving to: ‘get-pip.py’ 

100%[======================================>] 1,595,408   --.-K/s   in 0.1s     

2018-01-03 11:52:34 (13.5 MB/s) - ‘get-pip.py’ saved [1595408/1595408]

$ python3 -m pip --version /usr/bin/python3: No module named pip

1 个答案:

答案 0 :(得分:0)

你需要安装pip,试试这样的事情

wget -qO- https://bootstrap.pypa.io/get-pip.py | python

Travis将运行两个构建,首先使用python 2.7然后使用3.6,而不是将所有内容安装到同一个VM中。 2.7将缺乏点子。此外,即使它确实将所有内容安装到同一个VM中,您仍应使用正确的python版本运行pip以避免出现问题。

您也可以仅在需要时使用

等安装它
script:
    python -m pip || wget -qO- https://bootstrap.pypa.io/get-pip.py | python