我尝试将我的项目从编码重命名为Tutorial,但在重构目录名后,它出现了错误,如:
错误:在D:\ code \ encoding
中找不到CMakeLists.txt
我发现.idea
目录中的文件不会自动更改,它们仍为encoding.iml
,encodings.xml
。
答案 0 :(得分:22)
在项目文件夹中,cd
到.idea
目录。找到.name
文件并将其打开以进行编辑。显示当前项目名称的单行。更改并保存。
如果.name
文件不存在,请创建它,然后添加一行具有所需名称的文本。
现在重新打开CLion,项目名称已更改。
答案 1 :(得分:2)
在Mac上:
答案 2 :(得分:1)
如果您在Mac上运行Clion,您所要做的就是重命名包含.cpp和.h的目录以及CMake文件,然后在Clion中打开然后再到目录的新名称,Clion自动计算其他一切。
这就是我所做的。但是,在打开新项目之前,这是您重命名的项目。 Clion将使用原始名称创建一个项目目录,它将为空,因此您必须删除该目录。
但是,如果您使用的是Windows或其他机器,则可能不一样。因为,现在我看,我没有和.idea文件。
现在我想起来了。也许这是自新更新以来的新功能。我不确定何时发布了jetbrain IDE的新更新。所以,也许这是一个新功能,在您的原始帖子时不在。
答案 3 :(得分:0)
更容易回答:
你为什么这么努力?我通过编辑或.name文件添加到.idea目录来完成此操作。我已经多次这样做了它的确有效:
答案 4 :(得分:0)
将CLion与CMake一起使用时,项目名称由CMakeLists.txt中的project
命令设置。
查找类似于以下内容的行,并将“ my_project_name”更改为所需的CLion项目名称。
project(my_project_name)
然后使用工具>> CMake >>重新加载CMake项目,或者如果存在的话,通过单击顶部的黄色栏中的重新加载更改重新加载文件。 CMakeLists.txt
编辑器窗口。
请注意,如果您使用从源代码创建新的Cmake项目... 来创建项目,则CLion此时会使用目录名称生成CMakeLists.txt
,其中包括项目命令。 CMakeLists.txt
生成后可以进行编辑,包括更改项目名称。
答案 5 :(得分:0)
我在 Linux 中做到了这一点。通过 cmd 在我的项目目录中 Grep oldProjectName:
grep -rn oldProjectName
CMakeLists.txt, cmake-build-debug/ .idea/ 有那个 str,所以我用 cmd 替换所有:
sed -i "s/oldProjectName/newProjectName/g" `grep -rl "oldProjectName" .`
答案 6 :(得分:-1)
在终端中,输入以下命令(根据需要替换<project_dir>
,<old_name>
和<new_name>
):
find <project_dir>/.idea -type f -print0 | xargs -0 sed -i "s/<old_name>/<new_name>/g"`
mv <project_dir>/.idea/<old_name>.iml <project_dir>/.idea/<new_name>.iml
与Linux版本相同,但您需要在''
之后添加sed -i
(请参阅this answer):
find <project_dir>/.idea -type f -print0 | xargs -0 sed -i '' "s/<old_name>/<new_name>/g"`
mv <project_dir>/.idea/<old_name>.iml <project_dir>/.idea/<new_name>.iml
你已经完成了。
|
|
|
find ... | xargs... sed...
行在所有CLion项目文件中找到您的旧名称,并将其替换为您的新名称。如果需要,您可以使用此命令首先查看将在哪些文件中更改哪些行:
grep -R <old_name> <project_dir>/.idea/*
然后您可以执行替换命令的干运行:
find <project_dir>/.idea -type f -print0 | xargs -0 sed -n "s/<old_name>/<new_name>/p"