Pycharm Makefile 支持无法正确初始化 shell

问题描述 投票:0回答:1

所以,这对我来说是新的。我有一些具有类似 Pycharm 配置的项目可以正常工作,但我正在尝试在 Kubuntu 22.04 中解决此问题(不确定是否相关)。

简述:

  • 我正在使用 pyenv + pyenv-virtualenv 来初始化 Python 虚拟环境
  • 编写一个Makefile来执行一些命令
  • 使用 Makefile Languge 插件设置 Pycharm 并创建运行配置
  • 运行makefile配置不使用virtualenv

详情:

我创建了一个 virtualenv 并在文件夹中使用

pyenv

自动启用它
pyenv install 3.8.10
pyenv virtualenv 3.8.10 testenv
cd /some/project/dir/
echo "testenv" > .python-version

然后我创建一个 Pycharm 项目,配置 Pycharm 以使用 testenv 并安装 Pycharm Makefile Language

安装如下要求

pip install -r requirements.txt

#requirements.txt (example)
black==22.10.0
isort==5.10.1

Makefile 看起来像这样

.PHONY: format

format:
    isort .
    black .

当我从终端运行

make format
时。效果很好。

当我运行以下配置时,它的表现就像根本没有使用虚拟环境。我尝试了几种绝对和相对路径配置,但没有成功。

最后请注意,从系统上任何位置的终端运行配置创建的 make 命令(终端窗口上的第一行)都可以正常工作。

我做错了什么?

ubuntu makefile pycharm virtualenv
1个回答
0
投票

不幸的是,我无法在虚拟环境中运行 Makefile 配置。但也许我的解决方法会对某人有所帮助。 我的生成文件:

alembic_upgrade_head:
    alembic upgrade head

使用配置时,我收到错误:

make: alembic: No such file or directory

问题的出现是由于alembic没有全局安装。一旦我将其设置为全局(而不是在虚拟环境中)

pip install alembic

然后一切都通过 Makefile 配置进行。但我对这个决定并不满意。

这就是为什么我采取不同的做法。在pycharm中创建配置时,我选择了“Shell Script”,然后选择了“Script text”。在“脚本文本”文本字段中,我写道:

make alembic_upgrade_head

我还在“工作目录”中指定了项目的根目录。在这个配置中,一切正常!

© www.soinside.com 2019 - 2024. All rights reserved.