2024年6月17日10:14:22
用vware安装centos7,启动后查看端口, netstat-tlnp 报错netstat指令不存在,用 yum install net-tools 报错 "Could not resolve host: mirrorlist.centos.org"
解决方法:编辑 /etc/sysconfig/network-scripts/ifcfg-ens33 将 ONBOOT设置成 yes, 即 ONBOOT=yes 重启网络服务 systemctl restart network2024年9月2日17:00:17
有个若依的单机项目A(3.8.7 - 前后端分离版本),需要内部调用一个公共服务B,接入的过程中出现了一些问题,记录下,系统的版本信息如下:
系统 | SpringBoot | SpringCloud |
---|---|---|
A | 2.5.15 | - |
B | 2.7.13 | spring-cloud-starter-alibaba-nacos-discovery : 2021.0.5.0 spring-cloud-starter-openfeign : 3.1.8 spring-cloud-starter-loadbalancer : 3.1.7 |
-
A系统中直接引入当前版本的nacos、openfeign ,报错:
SpringBoot 2.5.15 不能适配当前版本的Spring Cloud,它能适配哪些版本,有知道的朋友可以告知下。
1.1 将SpringBoot 从 2.5.15 升级到与 B相同版本,升级之后,若依项目启动会报错,报错信息包括
org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException
at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:182)
at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54)
at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:357)
at java.lang.Iterable.forEach(Iterable.java:75)
解决方法,在A项目中增加一个configurate类,增加以下代码
@Configuration
public class Swagger3SpringFoxConfig {
@Bean
public static BeanPostProcessor springfoxHandlerProviderBeanPostProcessor() {
return new BeanPostProcessor() {
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
if (bean instanceof WebMvcRequestHandlerProvider || bean instanceof WebFluxRequestHandlerProvider) {
customizeSpringfoxHandlerMappings(getHandlerMappings(bean));
}
return bean;
}
private <T extends RequestMappingInfoHandlerMapping> void customizeSpringfoxHandlerMappings(List<T> mappings) {
List<T> copy = mappings.stream()
.filter(mapping -> mapping.getPatternParser() == null)
.collect(Collectors.toList());
mappings.clear();
mappings.addAll(copy);
}
@SuppressWarnings("unchecked")
private List<RequestMappingInfoHandlerMapping> getHandlerMappings(Object bean) {
try {
Field field = ReflectionUtils.findField(bean.getClass(), "handlerMappings");
field.setAccessible(true);
return (List<RequestMappingInfoHandlerMapping>) field.get(bean);
} catch (IllegalArgumentException | IllegalAccessException e) {
throw new IllegalStateException(e);
}
}
};
}
}
1.2 还会报bean冲突的异常
Method springSecurityFilterChain in org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration required a single bean, but 2 were found:
- requestMappingHandlerMapping: defined by method 'requestMappingHandlerMapping' in class path resource [org/springframework/web/servlet/config/annotation/DelegatingWebMvcConfiguration.class]
- controllerEndpointHandlerMapping: defined by method 'controllerEndpointHandlerMapping' in class path resource [org/springframework/boot/actuate/autoconfigure/endpoint/web/servlet/WebMvcEndpointManagementContextConfiguration.class]
解决方法,找到问题类 com.ruoyi.framework.config.properties.PermitAllUrlProperties ,其中有段代码 RequestMappingHandlerMapping mapping = applicationContext.getBean(RequestMappingHandlerMapping.class); 指定需要获取的bean名称即可
RequestMappingHandlerMapping mapping = applicationContext.getBean("requestMappingHandlerMapping", RequestMappingHandlerMapping.class);
- 之前A中的 spring-cloud-starter-openfeign 与 spring-cloud-starter-loadbalancer 未与B保持一致,用了2.2.5.RELEASE ,用这个版本,启动没有问题,A调用B的method时,报错
No instances available for nacos-provider
版本保持一致就ok了
- 2024-9-6 15:33:26
npm install 报错 request to https://registry.npmjs.org/xxx failed, reason: connect ETIMEDOUT 104.16.25.34:443
npm仓库问题,配置淘宝镜像
#设置镜像仓库
npm config set registry http://registry.npmmirror.com
#查看镜像仓库
npm config get registry
#重新npm install
npm install
- 2024-9-9 09:32:17
前端引入 DataV.GeoAtlas地理小工具系列 (aliyun.com) 工具,通过nginx访问(非localhost都存在该问题),接口https://geo.datav.aliyun.com/areas_v3/bound/130000_full.json报错 403 Forbidden
解决方法:需要在对应的前端页面,增加一行代码
# 在html的请求头标签中加上
<meta name=”referrer” content=”no-referrer”>