我一直在尝试为学校项目包括用于现代c++的JSON(GitHub page)库。自述文件的集成部分要求用户向将使用该库的.cpp文件中添加简单的代码行。但是,这些行提供了错误,因为在包含的文件中,设计人员使用#include 包含了其他文件。我正在使用使用Cmake的Clion。我目前无法运行该程序,而不会收到以下错误消息:fatal error: nlohmann/json.hpp: No such file or directory#include <nlohmann/json.hpp>我的代码如下:#include <nlohmann/json.hpp>// for convenienceusing json = nlohmann::json;我的Cmake:cmake_minimum_required(VERSION 3.8)project(assingment_5)set(CMAKE_CXX_STANDARD 11)include_directories( CMAKE_CURRENT_SOURCE_DIR/nlohmann)set(SOURCE_FILES main.cpp sample Item.cpp Item.h)add_executable(assingment_5 ${SOURCE_FILES})nlohmann文件夹位于项目的根目录中更新:谢谢大家的回答。CMake问题已由@Justin解决(注释中的完整修复)。我知道有多种解决方法,但这是我选择的方法。新的CMakeLists.txt现在看起来像:cmake_minimum_required(VERSION 3.8)project(assingment_5)set(CMAKE_CXX_STANDARD 11)set(SOURCE CMAKE_SOURCE_DIR)#[[include_directories(${PROJECT_SOURCE_DIR}) <------ works as well]]set(SOURCE_FILES main.cpp sample Item.cpp Item.h)add_executable(assingment_5 ${SOURCE_FILES})target_include_directories(assingment_5 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 为了简单起见,我开始像这样使用该 header :我的当前目录中有 header ,该 header 构成了简单的CMakeLists.txt。毕竟,我只是想探索图书馆。 现在,您可以像这样使用描述的using声明,然后开始运行。 (adsbygoogle = window.adsbygoogle || []).push({}); 09-16 17:08