From ef2847aa641f050d19afb47bdd4ca2d474718ab6 Mon Sep 17 00:00:00 2001 From: godotg Date: Sat, 8 Apr 2023 16:54:02 +0800 Subject: [PATCH] fix[resource]: use classpath* to solve the problem that some resources cannot be loaded --- net/src/main/java/com/zfoo/net/packet/PacketService.java | 4 ++-- .../main/java/com/zfoo/storage/manager/StorageManager.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/src/main/java/com/zfoo/net/packet/PacketService.java b/net/src/main/java/com/zfoo/net/packet/PacketService.java index 9b7399e4..e1cebb67 100644 --- a/net/src/main/java/com/zfoo/net/packet/PacketService.java +++ b/net/src/main/java/com/zfoo/net/packet/PacketService.java @@ -28,8 +28,8 @@ import com.zfoo.protocol.xml.XmlProtocols; import io.netty.buffer.ByteBuf; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.core.io.support.ResourcePatternResolver; import org.springframework.stereotype.Component; -import org.springframework.util.ResourceUtils; import java.io.IOException; import java.util.function.Predicate; @@ -115,7 +115,7 @@ public class PacketService implements IPacketService { GenerateProtocolFile.generateProtocolFilter = netGenerateProtocolFilter; // 解析protocol.xml文件,并将协议生成ProtocolRegistration - var resource = applicationContext.getResource(ResourceUtils.CLASSPATH_URL_PREFIX + protocolLocation); + var resource = applicationContext.getResource(ResourcePatternResolver.CLASSPATH_URL_PREFIX + protocolLocation); try { var xmlProtocols = DomUtils.inputStream2Object(resource.getInputStream(), XmlProtocols.class); ProtocolManager.initProtocol(xmlProtocols, generateOperation); diff --git a/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java b/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java index 8c3c15d9..cfc3803d 100644 --- a/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java +++ b/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java @@ -32,10 +32,10 @@ import org.slf4j.LoggerFactory; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.core.io.Resource; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; +import org.springframework.core.io.support.ResourcePatternResolver; import org.springframework.core.type.ClassMetadata; import org.springframework.core.type.classreading.CachingMetadataReaderFactory; import org.springframework.stereotype.Component; -import org.springframework.util.ResourceUtils; import java.io.FileNotFoundException; import java.io.IOException; @@ -230,7 +230,7 @@ public class StorageManager implements IStorageManager { try { var result = new HashSet(); for (var scanPackage : scanPackages) { - var packageSearchPath = ResourceUtils.CLASSPATH_URL_PREFIX + scanPackage.replace(StringUtils.PERIOD, StringUtils.SLASH) + StringUtils.SLASH + SUFFIX_PATTERN; + var packageSearchPath = ResourcePatternResolver.CLASSPATH_URL_PREFIX + scanPackage.replace(StringUtils.PERIOD, StringUtils.SLASH) + StringUtils.SLASH + SUFFIX_PATTERN; var resources = resourcePatternResolver.getResources(packageSearchPath); var resourceName = com.zfoo.storage.model.anno.Resource.class.getName(); for (var resource : resources) {