From d09d773ca362c378e934d342260d24ca6499dbad Mon Sep 17 00:00:00 2001 From: engsr6982 Date: Sat, 28 Dec 2024 17:38:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E7=BC=96=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Loader/JavaScriptPluginLoader.cc | 3 ++- src/Manager/NodeManager.cc | 2 +- xmake.lua | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Loader/JavaScriptPluginLoader.cc b/src/Loader/JavaScriptPluginLoader.cc index 23cd966e..57d52a9a 100644 --- a/src/Loader/JavaScriptPluginLoader.cc +++ b/src/Loader/JavaScriptPluginLoader.cc @@ -27,7 +27,8 @@ endstone::Plugin* JavaScriptPluginLoader::loadPlugin(std::string file) { data->mFileName = path.filename().string(); // 安装依赖 - if (NodeManager::packageHasDependency(path.parent_path() / "package.json")) { + if (NodeManager::packageHasDependency(path.parent_path() / "package.json") + && !NodeManager::packageHasDependency(path.parent_path() / "node_modules")) { Entry::getInstance()->getLogger().info("Installing dependencies for plugin: {}", path.filename()); manager.NpmInstall(path.parent_path().string()); } diff --git a/src/Manager/NodeManager.cc b/src/Manager/NodeManager.cc index adba0f67..1b2057d3 100644 --- a/src/Manager/NodeManager.cc +++ b/src/Manager/NodeManager.cc @@ -195,7 +195,7 @@ bool NodeManager::NpmInstall(string npmExecuteDir) { } success = node::SpinEventLoop(env).FromMaybe(1) == 0; } catch (...) { - Entry::getInstance()->getLogger().error("Failed to run npm command: {}", cmd); + Entry::getInstance()->getLogger().error("Failed to run npm install"); } node::Stop(env); diff --git a/xmake.lua b/xmake.lua index 38a4f54e..e7fb5dd8 100644 --- a/xmake.lua +++ b/xmake.lua @@ -3,7 +3,7 @@ add_rules("mode.debug", "mode.release") add_repositories("levilamina https://github.com/LiteLDev/xmake-repo.git") add_repositories("iceblcokmc https://github.com/IceBlcokMC/xmake-repo.git") -add_requires("node 16.20.2") -- iceblockmc +add_requires("nodejs 16.20.2") -- iceblockmc add_requires( "endstone 0.5.6", "expected-lite 0.8.0", @@ -40,7 +40,7 @@ target("Js_Engine") ) add_files("src/**.cc") add_includedirs("src") - add_packages("node") + add_packages("nodejs") add_packages( "fmt", "expected-lite",