当class遇上console.log的坑,该怎么办?

本文深入探讨了JavaScript链式调用的实现原理,通过具体示例讲解如何在自定义类中实现方法的链式调用,并对比了class与function定义toString方法的差异。

最近为了面试,疯狂刷题,当我遇到这个题;大脑已经崩塌,我开始钻牛角尖了,怎么办??? 干了这杯苦酒,下辈子不当程序员!!!

先上题目:

 const chain=new Chain();
 chain.eat().sleep(5).eat().sleep(6).eat().work()
 输出结果是:
 console.log(eat->sleep(5)->eat->sleep(6)->eat-work);

其实吧,题目很简单,只要class的方法返回自身就行;先上我的代码

class Chain {
  str = "";
  constructor(str: string) {
    this.str = str ?? "";
  }
  eat() {
    if (arguments.length) {
      const str = this.str ? `->eat(${[...arguments]})` : "eat";
      return new Chain(this.str + str);
    } else {
      const str = this.str ? `->eat` : "eat";
      return new Chain(this.str + str);
    }
  }
  sleep() {
    if (arguments.length) {
      const str = this.str ? `->sleep(${[...arguments]})` : "sleep";
      return new Chain(this.str + str);
    } else {
      const str = this.str ? `->sleep` : "sleep";
      return new Chain(this.str + str);
    }
  }
  work() {
    if (arguments.length) {
      const str = this.str ? `->work(${[...arguments]})` : "work";
      return new Chain(this.str + str);
    } else {
      const str = this.str ? `->work` : "work";
      return new Chain(this.str + str);
    }
  }
  toString() {
    return this.str;
  }
  valueOf() {
    return this.str;
  }
}
Chain.prototype.toString = function() {
  return this.str;
};
const chain = new Chain();
console.log(chain
  .eat()
  .sleep(5)
  .eat()
  .sleep(6)
  .eat()
  .work());

结果打印是这样子:
在这里插入图片描述

不知道你有没有发现,我在class内部定义了toString方法,在class.prototype上也定义了toString方法,就是为了测试最后打印能不能生成一个str的字符串;我为什么这么做呢,因为function可以定义toString方法,然后console.log打印的 f 想要的字符串
向上个function定义toString打印字符串的代码和截图;**这里我还不太确定这是不是真正的字符串,因为前面有个 f **

function add(...args) {
  const fn = function(...nums) {
    return add.apply(null, args.concat(nums));
  };

  fn.toString = function() {
    return args.reduce((a, b) => a + b);
  };
  return fn;
}

const s = add(1)(2, 3, 5)(3);
console.log(s);

在这里插入图片描述
我是不是想多了,虽然class关键字是function的语法糖;


然后,我就去查console.log的实现,查出来的结果是console.log是每个浏览器的内部方法,虽然每个浏览器都实现了console.log方法,但是不确定其内部实现原理是不是一样的;坑啊!
之后我又去查怎样查看JavaScript中[native code]的内部实现,又是坑,查不到;

算了,洗洗睡了,明天要面试,加油吧,骚年;

<template> <div class="web-view-container"> <view class="nav-bar"> <up-navbar title="在线咨询" bgColor="#165DFF"></up-navbar> </view> <web-view :src="webViewUrl" id="consultingWebView"></web-view> </div> </template> <script setup> import { ref } from "vue"; import { onLoad } from "@dcloudio/uni-app"; const webViewUrl = ref(""); onLoad(() => { webViewUrl.value = uni.getStorageSync("consultingUrl") || ""; uni.removeStorageSync("consultingUrl"); // 延迟注入UEM配置和视口修正代码 setTimeout(() => { // // 使用uni.getSystemInfoSync()替代uni.env.platform获取平台信息 // const isH5 = uni.getSystemInfoSync().platform === "h5"; const injectScript = ` // 配置UEM的S码(请替换为实际S码) // 配置UEM的S码(已设置为实际值S02086) // UEM完整配置(按文档要求格式) window.uemConfig = { sCode: 'S02086', version: '1.0.0', timestamp: new Date().getTime(), environment: process.env.NODE_ENV || 'production' }; console.log('[UEM配置] 完整配置:', window.uemConfig); // 多重验证机制 const configValid = window.uemConfig && window.uemConfig.sCode === 'S02086'; if (!configValid) { console.error('[UEM配置] 严重错误:S码配置验证失败', window.uemConfig); // 尝试从localStorage恢复 const stored = localStorage.getItem('uemConfig'); if (stored) { window.uemConfig = JSON.parse(stored); console.log('[UEM配置] 已从localStorage恢复:', window.uemConfig); } } else { console.log('[UEM配置] S码验证成功'); localStorage.setItem('uemConfig', JSON.stringify(window.uemConfig)); sessionStorage.setItem('uemConfig', JSON.stringify(window.uemConfig)); } // 修正视口设置 const meta = document.querySelector('meta[name=viewport]') || document.createElement('meta'); meta.name = 'viewport'; meta.content = 'width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no'; if (!document.querySelector('meta[name=viewport]')) { document.head.appendChild(meta); } `; // 统一平台判断逻辑 const systemInfo = uni.getSystemInfoSync(); const isH5 = typeof window !== 'undefined' && systemInfo.platform === 'h5'; if (isH5) { // H5环境下使用iframe注入脚本 // 增加延迟确保web-view完全加载 // 增强的web-view加载检测与注入机制 let webView = null; let injectionAttempts = 0; const maxAttempts = 8; const initialDelay = 500; const backoffFactor = 1.5; const fullConfig = { sCode: 'S02086', version: '1.0.0', timestamp: new Date().getTime(), environment: typeof window !== 'undefined' ? 'h5' : 'other' }; // 配置日志工具 const logWithTime = (message) => { const time = new Date().toISOString().split('T')[1].slice(0, 11); console.log(`[${time}][UEM注入]`, message); }; // 核心注入函数 const injectConfig = (targetWindow) => { try { // 清除旧配置 targetWindow.uemConfig = null; // 设置新配置 targetWindow.uemConfig = { ...fullConfig, attempt: injectionAttempts }; logWithTime(`配置已设置: ${JSON.stringify(targetWindow.uemConfig)}`); // 验证配置 if (targetWindow.uemConfig?.sCode !== 'S02086') { throw new Error(`配置验证失败: ${targetWindow.uemConfig?.sCode || '未设置'}`); } // 初始化UEM if (targetWindow.uem && typeof targetWindow.uem.init === 'function') { logWithTime('调用UEM.init()'); const startTime = performance.now(); const result = targetWindow.uem.init(); const duration = performance.now() - startTime; logWithTime(`UEM初始化完成 (${duration.toFixed(2)}ms): ${JSON.stringify(result)}`); return true; } else { logWithTime('UEM对象不存在,创建增强模拟对象'); targetWindow.uem = targetWindow.uem || {}; targetWindow.uem.init = function() { logWithTime('[模拟UEM] 初始化完成'); return { success: true, sCode: fullConfig.sCode, timestamp: Date.now() }; }; targetWindow.uem.getConfig = function() { return targetWindow.uemConfig; }; const result = targetWindow.uem.init(); logWithTime(`模拟UEM初始化结果: ${JSON.stringify(result)}`); return true; } } catch (e) { logWithTime(`注入失败: ${e.message}`); return false; } }; // 多路径注入策略 const attemptInjection = () => { injectionAttempts++; const currentDelay = initialDelay * Math.pow(backoffFactor, injectionAttempts - 1); logWithTime(`第${injectionAttempts}次尝试 (延迟${currentDelay.toFixed(0)}ms)`); // 尝试获取web-view元素 webView = document.querySelector('#consultingWebView'); let injectionSuccess = false; // 路径1: 通过web-view的contentWindow注入 (带postMessage备选) if (webView) { logWithTime(`web-view状态: ${webView.tagName}#${webView.id}, src=${webView.src.substring(0, 50)}`); try { // 检查contentWindow是否可访问 if (webView.contentWindow) { logWithTime('尝试通过contentWindow注入'); injectionSuccess = injectConfig(webView.contentWindow); if (!injectionSuccess) { // 尝试使用postMessage logWithTime('contentWindow注入失败,尝试postMessage'); webView.contentWindow.postMessage({ type: 'UEM_CONFIG_INJECTION', config: fullConfig }, '*'); injectionSuccess = true; // 标记为成功发送,但实际成功需要确认 } } else { logWithTime('web-view.contentWindow不可用'); } } catch (e) { logWithTime(`web-view注入异常: ${e.message}`); } } else { logWithTime('未找到web-view元素'); } // 路径2: 如果web-view注入失败,尝试直接在当前窗口注入 if (!injectionSuccess && typeof window !== 'undefined') { logWithTime('尝试直接在当前窗口注入'); injectionSuccess = injectConfig(window); } // 路径3: 创建iframe动态注入 if (!injectionSuccess) { logWithTime('尝试通过临时iframe注入'); const tempIframe = document.createElement('iframe'); tempIframe.style.display = 'none'; document.body.appendChild(tempIframe); try { if (tempIframe.contentWindow) { injectionSuccess = injectConfig(tempIframe.contentWindow); if (injectionSuccess) { logWithTime('iframe注入成功,复制配置回主窗口'); window.uemConfig = tempIframe.contentWindow.uemConfig; window.uem = tempIframe.contentWindow.uem; } } } catch (e) { logWithTime(`iframe注入异常: ${e.message}`); } finally { document.body.removeChild(tempIframe); } } // 结果处理与重试逻辑 if (injectionSuccess) { logWithTime('配置注入成功!'); localStorage.setItem('uemConfig', JSON.stringify(fullConfig)); sessionStorage.setItem('uemConfig', JSON.stringify(fullConfig)); // 发送成功事件 window.dispatchEvent(new CustomEvent('uemInjectionSuccess', { detail: fullConfig })); return true; } else if (injectionAttempts < maxAttempts) { logWithTime(`注入失败,${currentDelay.toFixed(0)}ms后重试`); setTimeout(attemptInjection, currentDelay); } else { logWithTime('所有注入尝试均已失败'); // 最后的应急措施 window.uemConfig = fullConfig; window.uem = { init: () => { const result = { success: true, sCode: fullConfig.sCode, emergency: true }; logWithTime(`[应急模式] UEM初始化: ${JSON.stringify(result)}`); return result; }, getConfig: () => window.uemConfig }; // 显示用户通知 uni.showModal({ title: '初始化提示', content: '聊天功能已启用基础模式,部分功能可能受限。如遇问题,请刷新页面重试。', showCancel: false }); return false; } }; // 设置web-view加载完成监听器 const setupWebViewListener = () => { const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { if (!webView) { webView = document.querySelector('#consultingWebView'); if (webView) { logWithTime('检测到web-view元素,开始注入流程'); observer.disconnect(); // 立即开始第一次尝试 attemptInjection(); } } }); }); // 观察body变化以检测web-view出现 observer.observe(document.body, { childList: true, subtree: true }); // 超时后备 - 如果10秒内未检测到web-view setTimeout(() => { if (!webView) { observer.disconnect(); logWithTime('web-view元素未检测到,启动后备注入流程'); attemptInjection(); } }, 10000); }; // 启动web-view检测 setupWebViewListener(); // 添加全局消息监听器处理web-view响应 window.addEventListener('message', (event) => { if (event.data.type === 'UEM_CONFIG_ACK') { logWithTime(`收到web-view确认: ${event.data.status}`); if (event.data.status === 'success') { localStorage.setItem('uemConfig', JSON.stringify(fullConfig)); sessionStorage.setItem('uemConfig', JSON.stringify(fullConfig)); } } }); } else if (typeof uni.createWebViewContext !== 'undefined') { // 非H5环境且API存在时使用 console.log('非H5环境注入脚本:', injectScript); uni.createWebViewContext('consultingWebView').evaluateJavaScript(injectScript); } else { // API不存在时显示错误并尝试备选方案 console.error('当前环境不支持uni.createWebViewContext,尝试直接执行脚本'); // 备选方案:直接在当前上下文执行脚本 try { // 强制重置并设置UEM配置 window.uemConfig = { sCode: 'S02086' }; console.log('[备选方案] 强制设置S码:', window.uemConfig.sCode); // 从localStorage读取配置确保一致性 const storedConfig = localStorage.getItem('uemConfig'); if (storedConfig) { window.uemConfig = JSON.parse(storedConfig); console.log('[备选方案] 从localStorage恢复配置:', window.uemConfig); } // 执行UEM初始化文档要求的代码 if (typeof window.uem === 'undefined') { console.log('[备选方案] UEM对象不存在,创建模拟对象'); window.uem = { init: function() { console.log('[备选方案] UEM初始化模拟成功'); // 模拟UEM初始化检查 if (window.uemConfig?.sCode === 'S02086') { console.log('[备选方案] UEM配置验证通过'); } else { console.error('[备选方案] UEM配置验证失败'); } } }; } if (window.uem && typeof window.uem.init === 'function') { console.log('[备选方案] 执行UEM初始化'); window.uem.init(); console.log('[备选方案] UEM初始化完成'); } else { console.error('[备选方案] UEM初始化函数不存在,执行终极备选方案'); // 终极备选:直接调用UEM可能使用的全局配置方法 if (window.configureUEM) { console.log('[备选方案] 调用window.configureUEM'); window.configureUEM({ sCode: 'S02086' }); } else { console.error('[备选方案] 所有配置方法均失败,尝试终极解决方案'); // 终极解决方案:动态创建UEM脚本 const uemScript = document.createElement('script'); uemScript.textContent = ` window.uemConfig = ${JSON.stringify(window.uemConfig)}; console.log('[动态脚本] UEM配置已设置:', window.uemConfig); if (!window.uem) window.uem = {}; window.uem.init = function() { console.log('[动态脚本] UEM初始化完成'); return { success: true, sCode: window.uemConfig.sCode }; }; window.uem.init(); `; document.head.appendChild(uemScript); console.log('[备选方案] 动态UEM脚本已注入'); } } } catch (e) { console.error('备选方案执行失败:', e); } } }, 2000); // 延长延迟确保页面加载完成 }); </script> <style lang="scss" scoped> :deep(.u-navbar__content__left) { display: none; } .web-view-container { position: fixed; top: 0; left: 0; width: 100%; height: 90%; z-index: 9999; } .nav-bar { height: 44px; display: flex; align-items: center; padding: 0 16px; background-color: #fff; border-bottom: 1px solid #eee; } .title { margin-left: 16px; font-size: 16px; font-weight: 500; } </style> const handleTabClick = (item) => { if (item.id === 2) { const url = "https://nesp.haier.net/webchatbot-new/#/h5chat?sysNum=1659675658214&sourceId=744&lang=zh_CN&userId=a94e6e99fd72b81eea697c5c90c99e2fc651a3670574652a8e20a9a0142ba9b0f1efb0f543c5603cf2d45532de3263759359e06f44d347942fbb95028d5ccd9f#reloaded"; uni.setStorageSync("consultingUrl", url); uni.navigateTo({ url: "/pages/consulting/index" }); return; } };这个页面中,需要嵌入一个外部的功能页,功能页中需要chat功能,嵌入后页面单点登录但是chat功能不能使用,并且报当前环境不支持uni.createWebViewContext,尝试直接执行脚本,应该怎么改
08-16
"nacos is starting with standalone" ,--. ,--.'| ,--,: : | Nacos 2.1.1 ,`--.'`| ' : ,---. Running in stand alone mode, All function modules | : : | | ' ,'\ .--.--. Port: 8848 : | \ | : ,--.--. ,---. / / | / / ' Pid: 13324 | : ' '; | / \ / \. ; ,. :| : /`./ Console: http://192.168.87.228:8848/nacos/index.html ' ' ;. ;.--. .-. | / / '' | |: :| : ;_ | | | \ | \__\/: . .. ' / ' | .; : \ \ `. https://nacos.io ' : | ; .' ," .--.; |' ; :__| : | `----. \ | | '`--' / / ,. |' | '.'|\ \ / / /`--' / ' : | ; : .' \ : : `----' '--'. / ; |.' | , .-./\ \ / `--'---' '---' `--`---' `----' 2025-06-05 18:45:51,523 INFO Tomcat initialized with port(s): 8848 (http) 2025-06-05 18:45:52,256 INFO Root WebApplicationContext: initialization completed in 6795 ms 2025-06-05 18:45:56,185 WARN There are no [com.alibaba.nacos.config.server.model.event.LocalDataChangeEvent] publishers for this event, please register 2025-06-05 18:45:56,186 WARN There are no [com.alibaba.nacos.config.server.model.event.LocalDataChangeEvent] publishers for this event, please register 2025-06-05 18:45:59,064 WARN Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'instanceOperatorClientImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/InstanceOperatorClientImpl.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientOperationServiceProxy' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/ClientOperationServiceProxy.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistentClientOperationServiceImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/impl/PersistentClientOperationServiceImpl.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries 2025-06-05 18:45:59,184 INFO Nacos Log files: D:\idea\nacos\logs 2025-06-05 18:45:59,185 INFO Nacos Log files: D:\idea\nacos\conf 2025-06-05 18:45:59,187 INFO Nacos Log files: D:\idea\nacos\data 2025-06-05 18:45:59,194 ERROR Startup errors : org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'instanceOperatorClientImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/InstanceOperatorClientImpl.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientOperationServiceProxy' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/ClientOperationServiceProxy.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistentClientOperationServiceImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/impl/PersistentClientOperationServiceImpl.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:953) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420) at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) at com.alibaba.nacos.Nacos.main(Nacos.java:35) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467) Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientOperationServiceProxy' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/ClientOperationServiceProxy.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistentClientOperationServiceImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/impl/PersistentClientOperationServiceImpl.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ... 27 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistentClientOperationServiceImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/impl/PersistentClientOperationServiceImpl.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:315) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:296) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ... 41 common frames omitted Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:224) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:117) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:311) ... 55 common frames omitted Caused by: java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1820) at java.lang.Runtime.load0(Runtime.java:782) at java.lang.System.load(System.java:1098) at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:78) at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:56) at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:64) at org.rocksdb.RocksDB.<clinit>(RocksDB.java:35) at com.alipay.sofa.jraft.storage.impl.RocksDBLogStorage.<clinit>(RocksDBLogStorage.java:75) at com.alipay.sofa.jraft.core.DefaultJRaftServiceFactory.createLogStorage(DefaultJRaftServiceFactory.java:50) at com.alipay.sofa.jraft.core.NodeImpl.initLogStorage(NodeImpl.java:579) at com.alipay.sofa.jraft.core.NodeImpl.init(NodeImpl.java:999) at com.alipay.sofa.jraft.core.NodeImpl.init(NodeImpl.java:139) at com.alipay.sofa.jraft.RaftServiceFactory.createAndInitRaftNode(RaftServiceFactory.java:47) at com.alipay.sofa.jraft.RaftGroupService.start(RaftGroupService.java:129) at com.alibaba.nacos.core.distributed.raft.JRaftServer.createMultiRaftGroup(JRaftServer.java:260) at com.alibaba.nacos.core.distributed.raft.JRaftProtocol.addRequestProcessors(JRaftProtocol.java:163) at com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl.<init>(PersistentClientOperationServiceImpl.java:95) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:211) ... 57 common frames omitted 2025-06-05 18:46:00,848 WARN [WatchFileCenter] start close 2025-06-05 18:46:00,850 WARN [WatchFileCenter] start to shutdown this watcher which is watch : D:\idea\nacos\data\loader 2025-06-05 18:46:00,852 WARN [WatchFileCenter] start to shutdown this watcher which is watch : D:\idea\nacos\conf 2025-06-05 18:46:00,853 WARN [WatchFileCenter] start to shutdown this watcher which is watch : D:\idea\nacos\data\tps 2025-06-05 18:46:00,854 WARN [WatchFileCenter] already closed 2025-06-05 18:46:00,855 WARN [NotifyCenter] Start destroying Publisher 2025-06-05 18:46:00,857 WARN [NotifyCenter] Destruction of the end 2025-06-05 18:46:00,857 ERROR Nacos failed to start, please see D:\idea\nacos\logs\nacos.log for more details. 2025-06-05 18:46:00,886 INFO Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2025-06-05 18:46:00,929 ERROR Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'instanceOperatorClientImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/InstanceOperatorClientImpl.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientOperationServiceProxy' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/ClientOperationServiceProxy.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistentClientOperationServiceImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/impl/PersistentClientOperationServiceImpl.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:953) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420) at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) at com.alibaba.nacos.Nacos.main(Nacos.java:35) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467) Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientOperationServiceProxy' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/ClientOperationServiceProxy.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistentClientOperationServiceImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/impl/PersistentClientOperationServiceImpl.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ... 27 common frames omitted Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'persistentClientOperationServiceImpl' defined in URL [jar:file:/D:/idea/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-naming-2.1.1.jar!/com/alibaba/nacos/naming/core/v2/service/impl/PersistentClientOperationServiceImpl.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:315) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:296) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309) at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ... 41 common frames omitted Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl]: Constructor threw exception; nested exception is java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:224) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:117) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:311) ... 55 common frames omitted Caused by: java.lang.UnsatisfiedLinkError: C:\Users\恰似寒光遇骄阳\AppData\Local\Temp\librocksdbjni4147176714898542951.dll: Can't find dependent libraries at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1820) at java.lang.Runtime.load0(Runtime.java:782) at java.lang.System.load(System.java:1098) at org.rocksdb.NativeLibraryLoader.loadLibraryFromJar(NativeLibraryLoader.java:78) at org.rocksdb.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:56) at org.rocksdb.RocksDB.loadLibrary(RocksDB.java:64) at org.rocksdb.RocksDB.<clinit>(RocksDB.java:35) at com.alipay.sofa.jraft.storage.impl.RocksDBLogStorage.<clinit>(RocksDBLogStorage.java:75) at com.alipay.sofa.jraft.core.DefaultJRaftServiceFactory.createLogStorage(DefaultJRaftServiceFactory.java:50) at com.alipay.sofa.jraft.core.NodeImpl.initLogStorage(NodeImpl.java:579) at com.alipay.sofa.jraft.core.NodeImpl.init(NodeImpl.java:999) at com.alipay.sofa.jraft.core.NodeImpl.init(NodeImpl.java:139) at com.alipay.sofa.jraft.RaftServiceFactory.createAndInitRaftNode(RaftServiceFactory.java:47) at com.alipay.sofa.jraft.RaftGroupService.start(RaftGroupService.java:129) at com.alibaba.nacos.core.distributed.raft.JRaftServer.createMultiRaftGroup(JRaftServer.java:260) at com.alibaba.nacos.core.distributed.raft.JRaftProtocol.addRequestProcessors(JRaftProtocol.java:163) at com.alibaba.nacos.naming.core.v2.service.impl.PersistentClientOperationServiceImpl.<init>(PersistentClientOperationServiceImpl.java:95) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:211) ... 57 common frames omitted
06-06
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值