pyCharm项目更改目录后,执行路径未更新的解决办法

最头疼环境问题。

换电脑,原python脚本打成zip包,全部拷贝到新电脑上。一开始放到路径A下,不清楚是路径太长还是路径含有中文,执行失败。于是,更换到路径B,结果,仍然执行失败。Run中显示的信息,仍然显示路径A。查了很多方案,都没有解决,最后自己误打误撞删了cache解决了,记录一下。

1、检查解释器

File -> Settings,检查解释器确实使用了新路径下的虚拟环境

2、检查项目的工作路径

我也不知道该怎么描述,看图吧,下面的Edit Configurations

打开之后检查各个working directory,确保都是新路径B

3、清除cache并重启

File->Invalidate Caches

4、删除__pycache__和.pytest_cache

因是自动化测试脚本,我只删除了case(即测试用例)目录下的cache们,然后,就可以了

一共做了以上4步,前3步都不管用,最后一步生效了。

不知道它是最后一个馒头,还是,它是唯一的馒头。。。

查了一下__pycache__,不知道重新编译的条件是什么,难道同一天?不过这种小概率事件,应该不会再遇到了吧。。

__pycache__是Python中的一个特殊目录,用于存储已编译的字节码文件(.pyc文件)。 当Python解释器执行一个模块时,它会首先检查是否存在对应的.pyc文件。为了提高模块加载的速度,每个模块都会在__pycache__文件夹中放置该模块的预编译模块,命名为module.version.pyc,其中version是模块的预编译版本编码,一般都包含Python的版本号。例如,在CPython发行版3.4中,fibo.py文件的预编译文件就是:pycache/fibo.cpython-34.pyc。这种命名规则可以保证不同版本的模块和不同版本的Python编译器的预编译模块可以共存。脚本在运行之前会首先检查Python文件的最后编辑日期和预编译模块的编译时间,从而决定是否需要重新编译。预编译模块也是跨平台的,所以不同的模块是可以在不同的系统和不同的架构之间共享的。

PyCharm更新 `JAVA_HOME` 环境变量路径通常涉及两种方式,具体取决于 PyCharm 的运行环境和配置需求。 ### 通过系统环境变量设置 `JAVA_HOME` PyCharm 在启动时会读取系统的环境变量,包括 `JAVA_HOME`。因此,如果希望全局更改 PyCharm 使用的 JDK 路径,可以直接修改操作系统的 `JAVA_HOME` 环境变量。对于 Windows 系统,可以在“系统属性” → “高级系统设置” → “环境变量”中找到 `JAVA_HOME`,并将其值更改为新的 JDK 根目录路径。完成修改后,重新启动 PyCharm 以确保新的环境变量生效 [^2]。 ### 通过 PyCharm 配置文件设置 `PYCHARM_JDK` 如果希望 PyCharm 使用特定的 JDK 而不影响系统其他应用程序,可以在 PyCharm 的配置文件中显式设置 `PYCHARM_JDK` 变量。具体操作为: 1. 打开 PyCharm 的安装目录,找到 `bin` 子目录下的 `pycharm64.vmoptions`(或 `pycharm.vmoptions`,取决于操作系统)文件。 2. 使用文本编辑器打开该文件,并添加以下内容: ```bash -Didea.jbr.version=11 -Didea.jbr.vendor=jetbrains -Djava.home=C:\Program Files\Java\jdk-11.0.11 ``` 其中 `C:\Program Files\Java\jdk-11.0.11` 应替换为实际的 JDK 安装路径。保存文件后,重启 PyCharm 以应用更改 [^2]。 ### 通过 PyCharm 内部设置指定 JDK PyCharm 还允许用户在项目级别指定使用的 JDK。此设置通常用于配置项目 SDK,而不是 PyCharm 本身的运行环境。具体步骤为: 1. 打开 PyCharm 并进入任意项目。 2. 点击顶部菜单栏的 `File` → `Project Structure`。 3. 在弹出的窗口中选择 `SDKs` 选项卡。 4. 点击 `+` 按钮并选择 `JDK`,然后浏览到新的 JDK 安装目录并选择。 5. 确认选择后,点击 `Apply` 和 `OK` 保存更改 [^2]。 ### 验证 `JAVA_HOME` 是否生效 完成上述任一设置后,可以通过以下方式验证 PyCharm 是否成功识别新的 JDK: 1. 启动 PyCharm。 2. 点击顶部菜单栏的 `Help` → `About`。 3. 查看显示的 Java 版本信息是否与新设置的 JDK 匹配。 此外,也可以通过命令行工具运行以下命令验证 `JAVA_HOME` 是否正确设置: ```bash echo %JAVA_HOME% ``` 如果输出为预期的 JDK 根目录路径,则表示配置已生效。为了确保 `java` 和 `javac` 命令可以在任意位置执行,`Path` 环境变量中应包含 `%JAVA_HOME%\bin`。可以通过以下命令验证: ```bash java -version javac -version ``` 如果能够正确显示 Java 运行环境和编译器的版本信息,则表示 `Path` 配置无误 。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值