首页 > 其他分享 >No module named 'mininet.cli'报错处理

No module named 'mininet.cli'报错处理

时间:2024-08-29 10:40:25浏览次数:11  
标签:mininet named lib python 报错 usr packages python3.8

No module named 'mininet.cli'报错处理

问题描述

在命令行中输入python,在解释器中执行from mininet.cli import CLI不会报错的前提下,使用make run编译运行程序时,出现如下报错:

Traceback (most recent call last):
  File "../../utils/run_exercise.py", line 29, in <module>
    from mininet.cli import CLI
ModuleNotFoundError: No module named 'mininet.cli'

解决方案

在本地路径的Makefile中,找到其引用的../../utils/Makefile文件(检查编译文件,找到执行该python文件的命令),在该命令的sudo python3 ...之间插入-E选项,例如:

排错过程

step1:检查mininet是否正确安装

使用pip show mininet命令,可以看到有输出

Name: mininet
Version: 2.3.0.dev6
Summary: Process-based OpenFlow emulator
Home-page: UNKNOWN
Author: Bob Lantz
Author-email: [email protected]
License: BSD
Location: /home/cc/.local/lib/python3.8/site-packages
Requires: setuptools
Required-by:

step2:检查sys.path列表中是否含有mininet路径

在python解释器中,输入:

import sys
print(sys.path)

输出的路径包括上一步中提到的/home/cc/.local/lib/python3.8/site-packages

['', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/home/cc/.local/lib/python3.8/site-packages', '/usr/local/lib/python3.8/dist-packages', '/usr/local/lib/python3.8/dist-packages/thrift-0.13.0-py3.8-linux-x86_64.egg', '/usr/lib/python3/dist-packages']

step3:尝试指定python版本

如下所示,由于原始的提示信息中,执行该python文件的命令是用python3,因此将其替换为python3.8

mkdir -p build pcaps logs
p4c-bm2-ss --p4v 16 --p4runtime-files build/basic.p4.p4info.txt -o build/basic.json basic.p4
sudo python3 ../../utils/run_exercise.py -t pod-topo/topology.json -j build/basic.json -b simple_switch_grpc

但替换后仍存在相同的报错

step4:检查python解释器版本一致性

为了确保 python3.8指向的确实是期望的 Python 3.8 解释器,并且能够找到mininet模块,使用sudo which python3.8命令,发现输出的路径为:

/usr/bin/python3.8

与第一步中显示的mininet路径不同。

因此,错误产生的原因是,sudo使用系统级的python3.8解释器(路径为/usr/bin/python3.8),但mininet安装在用户级别的路径(/home/cc/.local/lib/python3.8/site-packages),因此当使用sudo运行python脚本时,系统无法访问用户级别路径中的mininet模块。

解决方法是在该sudo命令中加上-E选项保留用户环境变量

标签:mininet,named,lib,python,报错,usr,packages,python3.8
From: https://www.cnblogs.com/CCchaos/p/18386100

相关文章

  • databaseId 不匹配导致Mybayis报错:Invalid bound statement (not found)
    问题后端调用Mapper方法报错:Invalidboundstatement(notfound)排查过程按网上方式逐一排查,都未解决问题网上搜不到解决方案,只能查看源码了首先定位到com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean#buildSqlSessionFactory方法打上一个条件断......
  • 安卓11报错:Failed to resolve: com.github.xxxx:14.0 Show in Project Structure dial
    本篇文章主要讲解,安卓11版本情况下项目运行报错Failedtoresolve:com.github.getActivity:Toaster:14.0ShowinProjectStructuredialogAffectedModules:app的主要原因及解决办法。作者:任聪聪独立博客:https://rccblogs.com/631.html日期:2024年8月28日具体......
  • HBuilderX运行报错,一直是“正在下载XX插件”
    一、HBuilderX简介:HBuilderX简称HX,HBuilder,H是HTML的缩写,Builder是建设者。是为前端开发者服务的通用IDE,或者称为编辑器。与vscode、sublime、webstorm类似。它可以开发普通web项目,也可以开发DCloud出品的uni-app项目、5+App项目、wap2app项目。目前有500......
  • yum依赖python2环境-"No module named urlgrabber"
    1.python3安装perl环境以及IPC/cmd.pm模块,由于环境中安装了pyhon2和python3导致模块引入冲突。makepython3时一直报错没有Module_tktinter,重新安装tk后python3还是import失败 2.检查发现python2可以引入,并且再进行安装模块时,使用的是python,而系统python指向python2 3.修改......
  • docker 安装后第一次启动时报错
    启动服务:systemctlstartdocker发生错误未能启动查看日志:systemctlstatusdockerjournalctl-xe发现错误:DependencyfailedforDockerApplicationContainerEngine.应该是有依赖服务未启动成功查看依赖服务:systemctllist-dependenciesdocker.service发现是docker.s......
  • ptrade排坑日记——交易策略报错: ‘NoneType‘ object is not subscriptable 。
    前言今天要和大家分享的一个问题是交易策略报错,希望大家在使用ptrade过程中遇见这个问题能够快速解决!一、问题描述交易策略报错: File"/home/fly/sim_backtest/result/412974e0-a014-11ee-8735-d4f5ef8c353c/user_strategy.py",line354,inocall_BS  px_change_ra......
  • 【python3.8安装报错】lmportError: DLL load failed while importing ft2font: 找不
    客户需求背景:安装python3.8无法运行,报错lmportError:DLLloadfailedwhileimportingft2font:找不到指定的模块 考虑兼容性问题这个问题首先需要考虑的是是否是python版本太高了,因为python3.9不支持win7,而python3.8版本对win7的兼容性也有一定的限制。解决:首先考......
  • selenium4在使用 下载驱动的时候报错: THIRD_PARTY_NOTICES.chromedriver
    在使用seeleniun自动下载驱动时报错:THIRD_PARTY_NOTICES.chromedriver原来的代码运行一直没有错误的,现在运行后下载下来的驱动是上面的格式导致运行报错,在github和google上查了官方已经修复在4.0.2版本中已经修复通过重新安装或者升级安装pipuninstallwebdriver-manag......
  • Request processing failed:MyBatisSystemException 黑马web开发课程P152中可能出现的
    该异常的最后一句,通过翻译,大概是:   [dispatcherServlet]:servlet.service()forservlet[dispatcherServlet]在路径[]的上下文中抛出异常[请求处理失败:MyBatisSystemException]    经过对代码的检查,发现controller,sevice,dao层业务逻辑都没有问题dao层的map......
  • 微软常用运行库合集|dll报错必装,Visual C++ 下载安装
    前言MicrosoftVisualC++Redistributable(简称MSVC,VB/VC,系统运行库)是Windows操作系统应用程序的基础类型库组件。此版VisualC++运行库组件合集(微软常用运行库合集)由国内封装爱好者@Dreamcast打包而成,整合VisualC++组件安装包运行库所有版本,提供图形安装界面,可自选更新V......