|
@@ -3,8 +3,11 @@ package shop.alien.gateway;
|
|
|
import org.mybatis.spring.annotation.MapperScan;
|
|
import org.mybatis.spring.annotation.MapperScan;
|
|
|
import org.springframework.boot.SpringApplication;
|
|
import org.springframework.boot.SpringApplication;
|
|
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
|
|
|
|
+import org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration;
|
|
|
import org.springframework.cloud.openfeign.EnableFeignClients;
|
|
import org.springframework.cloud.openfeign.EnableFeignClients;
|
|
|
import org.springframework.context.annotation.ComponentScan;
|
|
import org.springframework.context.annotation.ComponentScan;
|
|
|
|
|
+import org.springframework.context.annotation.Import;
|
|
|
|
|
+import shop.alien.util.encryption.JasyptAutoConfiguration;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 网关
|
|
* 网关
|
|
@@ -13,7 +16,8 @@ import org.springframework.context.annotation.ComponentScan;
|
|
|
* @version 1.0
|
|
* @version 1.0
|
|
|
* @date 2025/1/21 16:58
|
|
* @date 2025/1/21 16:58
|
|
|
*/
|
|
*/
|
|
|
-@ComponentScan({"shop.alien.gateway.*"})
|
|
|
|
|
|
|
+@Import({JacksonAutoConfiguration.class, JasyptAutoConfiguration.class})
|
|
|
|
|
+@ComponentScan({"shop.alien.gateway.*"}) // 停止扫描 shop.alien.util.* 以避免 RestTemplate 依赖冲突
|
|
|
@MapperScan(basePackages = {"shop.alien.gateway.mapper", "shop.alien.mapper"})
|
|
@MapperScan(basePackages = {"shop.alien.gateway.mapper", "shop.alien.mapper"})
|
|
|
@EnableFeignClients(basePackages = "shop.alien.gateway.feign")
|
|
@EnableFeignClients(basePackages = "shop.alien.gateway.feign")
|
|
|
@SpringBootApplication
|
|
@SpringBootApplication
|
|
@@ -22,10 +26,10 @@ public class AlienGatewayApplication {
|
|
|
public static void main(String[] args) {
|
|
public static void main(String[] args) {
|
|
|
/*因为Spring Boot本身已经集成了日志框架Logback,而在Alibaba Nacos中又集成了一套Logback框架
|
|
/*因为Spring Boot本身已经集成了日志框架Logback,而在Alibaba Nacos中又集成了一套Logback框架
|
|
|
而Alibaba Nacos中的Logback加载要优先于项目自身的Logback框架,在一个项目中其context_name只能定义一次,
|
|
而Alibaba Nacos中的Logback加载要优先于项目自身的Logback框架,在一个项目中其context_name只能定义一次,
|
|
|
- 所以,在项目启动时,Alibaba Nacos的Logback先加载完成后,再加载项目本身的Logback时就出现了冲突,报错误日志 “ Failed to rename context [logback] as [nacos] java.lang.IllegalStateException: Context has been already given a name ” ,但是不影响使用,
|
|
|
|
|
|
|
+ so,在项目启动时,Alibaba Nacos's Logback先加载完成后,再加载项目本身的Logback时就出现了冲突,报错误日志 “ Failed to rename context [logback] as [nacos] java.lang.IllegalStateException: Context has been already given a name ” ,但是不影响使用,
|
|
|
解决这个,只要禁用掉其中一个Logback就可以了,一般禁用外部框架夹带的Logback即可*/
|
|
解决这个,只要禁用掉其中一个Logback就可以了,一般禁用外部框架夹带的Logback即可*/
|
|
|
System.setProperty("nacos.logging.default.config.enabled", "false");
|
|
System.setProperty("nacos.logging.default.config.enabled", "false");
|
|
|
SpringApplication.run(AlienGatewayApplication.class, args);
|
|
SpringApplication.run(AlienGatewayApplication.class, args);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-}
|
|
|
|
|
|
|
+}
|