顺德营销型网站一站式服务哪家好,中国疫苗最新消息今天,宁河做网站公司,网站建设需要关注什么安装路径的疑惑#xff1a;NPM 和 PIP 的安装机制
NPM 安装路径规则#xff1a; 依赖安装在项目目录下#xff1a; 当你运行 npm install --save-dev jest#xff0c;它会在当前目录#xff08;例如 F:\#xff09;下创建一个 node_modules 文件夹#xff0c;把 jest 安…安装路径的疑惑NPM 和 PIP 的安装机制
NPM 安装路径规则 依赖安装在项目目录下 当你运行 npm install --save-dev jest它会在当前目录例如 F:\下创建一个 node_modules 文件夹把 jest 安装在这个文件夹里。同时它会创建或更新 package.json 文件来记录安装的依赖。 例子 在 F:\my_project 运行 npm install jestJest 会安装到 F:\my_project\node_modules 里。如果你换到 C:\another_project 目录之前在 F:\ 安装的 Jest 是无法直接使用的需要在 C:\another_project 重新安装。 全局安装 如果你希望在所有目录都能使用 jest可以使用全局安装 npm install -g jest这样 jest 会安装到全局环境之后在任意目录下都能运行 jest 命令。 PIP 安装路径规则Python 包管理器 默认安装到系统或虚拟环境的 site-packages 当你运行 pip install package_name包会安装到 Python 的 site-packages 目录而不是你当前所在的磁盘目录。安装路径与运行命令的磁盘无关。 例子 在 C:\ 运行 pip install requests 和在 F:\ 运行效果是一样的都会安装到 Python 默认的 site-packages 目录。 虚拟环境中的安装 如果你创建了一个 虚拟环境例如在 F:\env激活这个环境后运行 pip install包会被安装到这个虚拟环境内。只有在激活这个环境时才能使用这些包。 全局与虚拟环境的区别 全局安装任何地方都能用。虚拟环境安装只有在特定环境中能用便于项目隔离。 3. 总结NPM vs PIP 安装行为
特点NPM (Node.js)PIP (Python)默认安装位置当前项目目录的 node_modules 文件夹Python 的 site-packages 目录与磁盘无关全局安装需加 -g 参数 (npm install -g package)需加 --user 参数 (pip install --user package)跨项目使用全局安装可跨项目使用局部安装仅限当前目录全局安装默认可用虚拟环境安装仅限当前环境虚拟环境默认每个项目独立依赖类似虚拟环境需要手动创建虚拟环境 (python -m venv env) 你可以通过以下几种方法查看 Python 的 site-packages 目录位置
1. 使用 site 模块
在终端命令行中输入以下命令
python -m site输出结果会显示类似以下内容
sys.path [...,/usr/local/lib/python3.10/site-packages,...,
]
USER_BASE: /home/username/.local
USER_SITE: /home/username/.local/lib/python3.10/site-packages
ENABLE_USER_SITE: Truesite-packages 目录就是 /usr/local/lib/python3.10/site-packages 或 USER_SITE 显示的路径。 2. 使用 sysconfig 模块
在终端中输入
python -m sysconfig输出中找到 site-packages 相关路径例如
purelib: /usr/local/lib/python3.10/site-packages,
platlib: /usr/local/lib/python3.10/site-packages,3. 使用 Python 代码获取路径
如果你在 Python 解释器中运行可以用以下代码
import site
print(site.getsitepackages()) # 查看全局 site-packages 目录print(site.getusersitepackages()) # 查看当前用户的 site-packages 目录输出类似
[C:\\Python310\\Lib\\site-packages]
C:\Users\YourUsername\AppData\Roaming\Python\Python310\site-packages4. 在虚拟环境中查看 site-packages
如果你在虚拟环境venv中可以用以下命令查看
python -c import sys; print([p for p in sys.path if site-packages in p])输出会类似
[F:\\my_virtual_env\\Lib\\site-packages]这表示在 F:\my_virtual_env\Lib\site-packages 目录下安装了 Python 包。 5. PIP 查看安装路径
你还可以用 pip 查看包的安装路径运行
pip show 包名例如查看 requests 包的安装路径
pip show requests输出
Location: C:\Python310\Lib\site-packages总结
全局安装路径使用 python -m site 或 import site 查看。用户安装路径使用 site.getusersitepackages() 查看。虚拟环境路径激活虚拟环境后使用 sys.path 或 pip show 查看。 Node.js 和 npm 安装中常见问题总结
1. 安装路径选择
问题 安装 Node.js 时选择将其安装到 D:\Programming\Node.json但 npm 的全局包却默认安装到了 C:\Users\Acer\AppData\Roaming\npm\node_modules。
原因
Node.js 的安装路径和 npm 全局包的存储路径是独立的。npm 默认将全局包安装在用户目录 (AppData) 中以便多项目共享并避免系统权限问题。
解决方案
如果希望将全局包安装到 Node.js 的安装目录可以修改 npm config npm config set prefix D:\Programming\Node.json\node_modules检查和确认全局路径是否设置正确 npm root -g2 删除错误的 prefix 配置
npm config delete prefix如果命令无法删除手动编辑 .npmrc 文件 查找配置文件路径 npm config get userconfig打开该文件删除或修改 prefix 设置 重新设置正确路径 npm config set prefix D:\Programming\Node.json\node_modules\npm\lib3 环境变量未更新
问题 修改 prefix 路径后全局安装的命令行工具如 nodemon, eslint无法使用。
原因
修改全局路径后没有将新的 bin 目录添加到系统环境变量导致命令行找不到工具。
解决方案 在 Path 中添加 D:\Programming\Node.json\node_modules\npm\lib\bin重启命令行窗口确保环境变量生效。 总结 正确配置项目使用的测试框架 安装 Node.js 时可以安装到任意盘符但全局包路径和环境变量需要根据实际需求调整。修改 npm 配置使用 npm config set prefix 修改全局路径或手动编辑 .npmrc 文件。环境变量配置确保将新的 bin 路径添加到系统环境变量中避免全局工具无法使用的问题。 关键点 全局配置 (D:\Programming\Node.json\node_modules\npm) 只影响 Node.js 的全局行为不会影响你具体项目的测试运行。我们需要修改的是你项目目录下的 package.json 文件即 F:\course\engineering\2025-group-24\package.json 找到你的项目 package.json 文件修改项目的 package.json 打开该文件找到 scripts 部分修改为 scripts: {test: jest
}运行测试在终端中确保你位于项目目录 cd F:\course\engineering\2025-group-24
npm test不要修改全局 npm 的 package.json它只影响全局行为和项目测试无关。修改项目目录下的 package.json这样 Jest 才能在项目中运行。