我的项目使用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 回答
你需要安装pip,试试这样的东西
Travis将运行两个构建,首先使用python 2.7然后使用3.6,而不是将所有内容安装到同一个VM中 . 2.7将缺乏点子 . 此外,即使它确实将所有内容安装到同一个VM中,您仍应使用正确的python版本运行pip以避免出现问题 .
您也可以在需要的时候安装它