提交git
This commit is contained in:
35
uling-plugins/pom.xml
Normal file
35
uling-plugins/pom.xml
Normal file
@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>cc.uling</groupId>
|
||||
<artifactId>uling</artifactId>
|
||||
<version>1.0</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
<artifactId>uling-plugins</artifactId>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cc.uling</groupId>
|
||||
<artifactId>uling-yc-service</artifactId>
|
||||
<version>1.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.google.maps</groupId>
|
||||
<artifactId>google-maps-services</artifactId>
|
||||
<version>2.2.0</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
</project>
|
||||
@ -0,0 +1,80 @@
|
||||
package cc.uling.plugins.exchange;
|
||||
|
||||
import cc.uling.common.constant.CacheKeys;
|
||||
import cc.uling.common.utils.StringUtil;
|
||||
import cc.uling.plugins.exchange.config.Config;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.jfinal.aop.Aop;
|
||||
import com.web.consts.SysConfigKey;
|
||||
import com.web.gen.service.SysConfigService;
|
||||
import io.jboot.aop.annotation.Bean;
|
||||
import io.jboot.utils.CacheUtil;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@Bean
|
||||
public abstract class ExchangeRageService implements CurrencyExchangePluginsService {
|
||||
|
||||
protected final SysConfigService sysConfigService;
|
||||
|
||||
public ExchangeRageService() {
|
||||
this.sysConfigService = Aop.get(SysConfigService.class);
|
||||
}
|
||||
|
||||
private static Map<String, ExchangeRageService> serviceMap = new HashMap<>();
|
||||
|
||||
@Override
|
||||
public BigDecimal getByCache(String currency, String toCurrency) {
|
||||
if (currency == null) {
|
||||
return null;
|
||||
}
|
||||
String search = "USDT".equalsIgnoreCase(toCurrency) ? "USD" : toCurrency;
|
||||
if (currency.equalsIgnoreCase(search)) {
|
||||
return BigDecimal.ONE;
|
||||
}
|
||||
BigDecimal rate = CacheUtil.get(CacheKeys.ExchangeRate, currency + "_" + search);
|
||||
if (rate != null) {
|
||||
return rate;
|
||||
}
|
||||
//获取配置
|
||||
String configValue = sysConfigService.getValueByKey(SysConfigKey.EXCHANGE_RATE_CONFIG);
|
||||
if (StringUtil.isBlank(configValue)) {
|
||||
return null;
|
||||
}
|
||||
Config config = JSONUtil.toBean(configValue, Config.class);
|
||||
if (config == null) {
|
||||
return null;
|
||||
}
|
||||
ExchangeRageService service = serviceMap.get(config.getType());
|
||||
if (service == null) {
|
||||
rate = doService(config, configValue, currency, search);
|
||||
} else {
|
||||
rate = service.getRate(configValue, currency, search);
|
||||
}
|
||||
if (rate != null) {
|
||||
CacheUtil.put(CacheKeys.ExchangeRate, currency + "_" + search, rate, config.getExpire().intValue());
|
||||
}
|
||||
return rate;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, BigDecimal> getRates(String currency) {
|
||||
return new HashMap<>();
|
||||
}
|
||||
|
||||
|
||||
private BigDecimal doService(Config config, String configValue, String currency, String toCurrency) {
|
||||
ExchangeRateEnum type = ExchangeRateEnum.valueOf(config.getType());
|
||||
if (type == null) {
|
||||
return null;
|
||||
}
|
||||
ExchangeRageService service = Aop.get(type.getService());
|
||||
if (service == null) {
|
||||
return null;
|
||||
}
|
||||
return service.getRate(configValue, currency, toCurrency);
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,58 @@
|
||||
package cc.uling.plugins.exchange;
|
||||
|
||||
import cc.uling.common.utils.HttpUtil;
|
||||
import cc.uling.common.utils.StringUtil;
|
||||
import cc.uling.plugins.exchange.config.ApiConfig;
|
||||
import cn.hutool.json.JSONObject;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import io.jboot.aop.annotation.Bean;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.MessageFormat;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@Bean
|
||||
public class ExchangeRateApiServiceImpl extends ExchangeRageService implements CurrencyExchangePluginsService {
|
||||
|
||||
|
||||
private static final String URL = "https://v6.exchangerate-api.com/v6/{0}/latest/{1}";
|
||||
|
||||
public BigDecimal getByCache(String currency, String toCurrency) {
|
||||
return super.getByCache(currency, toCurrency);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BigDecimal getRate(String config, String currency, String toCurrency) {
|
||||
ApiConfig apiConfig = getConfig(config);
|
||||
String url = MessageFormat.format(URL, apiConfig.getApiKey(), currency);
|
||||
String result = HttpUtil.doGet(url, new HashMap<>());
|
||||
if (StringUtil.isBlank(result)) {
|
||||
return null;
|
||||
}
|
||||
if (!JSONUtil.isTypeJSON(result)) {
|
||||
return null;
|
||||
}
|
||||
JSONObject json = JSONUtil.parseObj(result);
|
||||
if (!json.containsKey("result") || !"success".equalsIgnoreCase(json.getStr("result")) || !json.containsKey("conversion_rates")) {
|
||||
return null;
|
||||
}
|
||||
JSONObject rates = json.getJSONObject("conversion_rates");
|
||||
if (!rates.containsKey(toCurrency)) {
|
||||
return null;
|
||||
}
|
||||
return rates.getBigDecimal(toCurrency);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, BigDecimal> getRates(String currency) {
|
||||
|
||||
return new HashMap<>();
|
||||
}
|
||||
|
||||
public ApiConfig getConfig(String config) {
|
||||
return JSONUtil.toBean(config, ApiConfig.class);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
package cc.uling.plugins.exchange;
|
||||
|
||||
public enum ExchangeRateEnum {
|
||||
|
||||
EXCHANGE_RATE_API(ExchangeRateApiServiceImpl.class),
|
||||
;
|
||||
|
||||
private Class<ExchangeRageService> service;
|
||||
|
||||
ExchangeRateEnum(Class service) {
|
||||
this.service = service;
|
||||
}
|
||||
|
||||
public Class<ExchangeRageService> getService() {
|
||||
return service;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,16 @@
|
||||
package cc.uling.plugins.maps;
|
||||
|
||||
import cc.uling.plugins.maps.config.BaseConfig;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public abstract class BaseMapApiServiceImpl<T extends BaseConfig> implements MapsApiService<T> {
|
||||
|
||||
|
||||
public String contact(String... places) {
|
||||
return Arrays.stream(places).filter(Objects::nonNull).collect(Collectors.joining(", "));
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,82 @@
|
||||
package cc.uling.plugins.maps;
|
||||
|
||||
import cc.uling.common.utils.HttpUtil;
|
||||
import cc.uling.plugins.maps.config.GoogleConfig;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.google.maps.GeoApiContext;
|
||||
import com.google.maps.GeocodingApi;
|
||||
import com.google.maps.model.AddressComponent;
|
||||
import com.google.maps.model.AddressComponentType;
|
||||
import com.google.maps.model.GeocodingResult;
|
||||
import io.jboot.aop.annotation.Bean;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@Slf4j
|
||||
@Bean
|
||||
public class GoogleMapsApiServiceImpl extends BaseMapApiServiceImpl<GoogleConfig> {
|
||||
|
||||
@Override
|
||||
public String getPostalCode(GoogleConfig config, String address) {
|
||||
Map<String, String> data = searchPlaceDetails(config, address);
|
||||
if (data == null) {
|
||||
return null;
|
||||
}
|
||||
log.info(" data {} ", JSONUtil.toJsonStr(data));
|
||||
return data.get(AddressComponentType.POSTAL_CODE.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public GoogleConfig getConfig(String config) {
|
||||
return JSONUtil.toBean(config, GoogleConfig.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, String> searchPlaceDetails(GoogleConfig config, String address) {
|
||||
log.info(" apikey {}", config.getConfig());
|
||||
GeoApiContext context = new GeoApiContext.Builder().apiKey(config.getConfig()).build();
|
||||
Map<String, String> data = new HashMap<>();
|
||||
GeocodingResult[] results = null;
|
||||
log.info(" 谷歌API获取邮政编码 {} ", address);
|
||||
try {
|
||||
results = GeocodingApi.geocode(context, address).await();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
// 发送地理编码请求
|
||||
log.info(" results {} ", JSONUtil.toJsonStr(results));
|
||||
if (results == null || results.length == 0) {
|
||||
return null;
|
||||
}
|
||||
// 解析地址组件查找邮政编码
|
||||
for (AddressComponent component : results[0].addressComponents) {
|
||||
for (AddressComponentType type : component.types) {
|
||||
data.put(type.toString(), component.longName);
|
||||
}
|
||||
}
|
||||
return data;
|
||||
}
|
||||
|
||||
private static final String API_KEY = "AIzaSyDuhvBCcejeZSI5v-OxKbJ2fYZmt1dqmOw";
|
||||
private static final String BASE_URL = "https://maps.googleapis.com/maps/api/geocode/json";
|
||||
|
||||
public static String getPostalCode(String address) throws Exception {
|
||||
String encodedAddress = java.net.URLEncoder.encode(address, "UTF-8");
|
||||
String url = BASE_URL + "?address=" + encodedAddress + "&key=" + API_KEY;
|
||||
String result = HttpUtil.doGet(url, new HashMap<>());
|
||||
log.info("result {}", result);
|
||||
return null;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
String postalCode = getPostalCode("Agoura Hills, California, US");
|
||||
System.out.println("邮政编码: " + postalCode);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,57 @@
|
||||
package cc.uling.plugins.maps;
|
||||
|
||||
import cc.uling.common.utils.StringUtil;
|
||||
import cc.uling.plugins.maps.config.BaseConfig;
|
||||
import cc.uling.plugins.maps.config.MapApiConfig;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.jfinal.aop.Aop;
|
||||
import com.jfinal.aop.Inject;
|
||||
import com.web.consts.SysConfigKey;
|
||||
import com.web.gen.service.SysConfigService;
|
||||
import io.jboot.aop.annotation.Bean;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@Bean
|
||||
public class MapApiServiceImpl<T extends BaseConfig> implements MapsApiPlugins {
|
||||
|
||||
@Inject
|
||||
private SysConfigService sysConfigService;
|
||||
|
||||
private final Map<String, MapsApiService<T>> serviceMap = new HashMap<>();
|
||||
|
||||
@Override
|
||||
public String getPostalCode(String... places) {
|
||||
String config = sysConfigService.getValueByKey(SysConfigKey.MAPS_API_CONFIG);
|
||||
if (StringUtil.isBlank(config) || !JSONUtil.isTypeJSON(config)) {
|
||||
return null;
|
||||
}
|
||||
MapApiConfig mapApiConfig = JSONUtil.toBean(config, MapApiConfig.class);
|
||||
MapsApiService<T> apiService = serviceMap.get(mapApiConfig.getType());
|
||||
if (apiService == null) {
|
||||
apiService = getService(mapApiConfig.getType());
|
||||
serviceMap.put(mapApiConfig.getType(), apiService);
|
||||
}
|
||||
if (apiService == null) {
|
||||
return null;
|
||||
}
|
||||
T baseConfig = apiService.getConfig(config);
|
||||
String address = apiService.contact(places);
|
||||
return apiService.getPostalCode(baseConfig, address);
|
||||
}
|
||||
|
||||
public MapsApiService getService(String type) {
|
||||
MapsApiService apiService = serviceMap.get(type);
|
||||
if (apiService == null) {
|
||||
MapsApiEnum apiEnum = MapsApiEnum.valueOf(type);
|
||||
if (apiEnum != null) {
|
||||
apiService = Aop.get(apiEnum.getService());
|
||||
serviceMap.put(type, apiService);
|
||||
}
|
||||
}
|
||||
return apiService;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
package cc.uling.plugins.maps;
|
||||
|
||||
public enum MapsApiEnum {
|
||||
|
||||
GOOGLE_MAPS_API(GoogleMapsApiServiceImpl.class),
|
||||
;
|
||||
|
||||
private Class<GoogleMapsApiServiceImpl> service;
|
||||
|
||||
MapsApiEnum(Class service) {
|
||||
this.service = service;
|
||||
}
|
||||
|
||||
public Class<GoogleMapsApiServiceImpl> getService() {
|
||||
return service;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,45 @@
|
||||
package cc.uling.plugins.maps;
|
||||
|
||||
import cc.uling.plugins.maps.config.BaseConfig;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 地图API
|
||||
*/
|
||||
public interface MapsApiService<T extends BaseConfig> {
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 拼接地址
|
||||
*
|
||||
* @param places
|
||||
* @return
|
||||
*/
|
||||
String contact(String... places);
|
||||
|
||||
/**
|
||||
* 获取邮政编码
|
||||
*
|
||||
* @param address
|
||||
* @return
|
||||
*/
|
||||
String getPostalCode(T config, String address);
|
||||
|
||||
/**
|
||||
* @param config
|
||||
* @return
|
||||
*/
|
||||
T getConfig(String config);
|
||||
|
||||
/**
|
||||
* 查询地点详情
|
||||
*
|
||||
* @param address 地址(国家、州/省份、城市、地区、详细地址)
|
||||
* @return
|
||||
*/
|
||||
Map<String, String> searchPlaceDetails(T config, String address);
|
||||
|
||||
}
|
||||
@ -0,0 +1,21 @@
|
||||
package cc.uling.plugins.maps.config;
|
||||
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
|
||||
public class BaseConfig<T> {
|
||||
|
||||
private String url;
|
||||
|
||||
private T config;
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSONUtil.toJsonStr(this);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,21 @@
|
||||
package cc.uling.plugins.maps.config;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Slf4j
|
||||
public class GoogleConfig extends BaseConfig<String> {
|
||||
|
||||
private String config;
|
||||
|
||||
public static void main(String[] args) {
|
||||
GoogleConfig googleConfig = new GoogleConfig();
|
||||
googleConfig.setUrl("https://maps.googleapis.com");
|
||||
googleConfig.setConfig("AIzaSyDuhvBCcejeZSI5v-OxKbJ2fYZmt1dqmOw");
|
||||
log.info(" GoogleConfig {} ", googleConfig.toString());
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package cc.uling.plugins.maps.config;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class MapApiConfig implements Serializable {
|
||||
|
||||
private String type;
|
||||
|
||||
private String config;
|
||||
}
|
||||
160
uling-plugins/uling-plugins.iml
Normal file
160
uling-plugins/uling-plugins.iml
Normal file
@ -0,0 +1,160 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output url="file://$MODULE_DIR$/target/classes" />
|
||||
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="uling-yc-service" />
|
||||
<orderEntry type="module" module-name="uling-system" />
|
||||
<orderEntry type="module" module-name="uling-framework" />
|
||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-jwt:5.8.27" level="project" />
|
||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-json:5.8.27" level="project" />
|
||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-core:5.8.27" level="project" />
|
||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-crypto:5.8.27" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-text:1.10.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.3.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.15" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP-java7:2.4.13" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: cloud.tianai.captcha:tianai-captcha:1.5.1" level="project" />
|
||||
<orderEntry type="module" module-name="uling-common" />
|
||||
<orderEntry type="library" name="Maven: com.github.oshi:oshi-core:6.5.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna:5.14.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.java.dev.jna:jna-platform:5.14.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.zxing:javase:3.3.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.zxing:core:3.3.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.beust:jcommander:1.48" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.github.jai-imageio:jai-imageio-core:1.3.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.redisson:redisson:3.12.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-common:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-codec:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-buffer:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-transport:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-resolver-dns:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-codec-dns:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-handler:4.1.45.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.cache:cache-api:1.0.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.3.2.RELEASE" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.reactivex.rxjava2:rxjava:2.2.17" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.10.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jodd:jodd-bean:5.0.13" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jodd:jodd-core:5.0.13" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.sun.mail:javax.mail:1.6.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:fluent-hc:4.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.0.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: junit:junit:3.8.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.alibaba:easyexcel:4.0.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.alibaba:easyexcel-core:4.0.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.alibaba:easyexcel-support:3.3.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-csv:1.11.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ehcache:ehcache:3.9.11" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:5.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.poi:poi:5.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-math3:3.6.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.zaxxer:SparseBitSet:1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-lite:5.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:5.1.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-compress:1.21" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.github.virtuald:curvesapi:1.07" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.4" level="project" />
|
||||
<orderEntry type="module" module-name="uling-components" />
|
||||
<orderEntry type="library" name="Maven: com.rabbitmq:amqp-client:5.11.0" level="project" />
|
||||
<orderEntry type="module" module-name="uling-api-demo" />
|
||||
<orderEntry type="library" name="Maven: io.swagger:swagger-core:1.5.21" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.21" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.21" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.maps:google-maps-services:2.2.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.squareup.okhttp3:okhttp:4.10.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.squareup.okio:okio-jvm:3.0.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.31" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.31" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jetbrains.kotlin:kotlin-stdlib-common:1.5.31" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jetbrains.kotlin:kotlin-stdlib:1.6.20" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jetbrains:annotations:13.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.10.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.opencensus:opencensus-api:0.31.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.grpc:grpc-context:1.27.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.jboot:jboot:3.15.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.jfinal:jfinal:5.0.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.jfinal:cos:2022.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.jfinal:jfinal-undertow:3.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.undertow:undertow-core:2.2.18.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jboss.xnio:xnio-api:3.8.7.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.wildfly.common:wildfly-common:1.5.4.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.wildfly.client:wildfly-client-config:1.0.1.Final" level="project" />
|
||||
<orderEntry type="library" scope="RUNTIME" name="Maven: org.jboss.xnio:xnio-nio:3.8.7.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jboss.threads:jboss-threads:3.1.0.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.undertow:undertow-servlet:2.2.18.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:4.0.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: cglib:cglib:3.3.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.ow2.asm:asm:7.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.undertow:undertow-websockets-jsr:2.2.18.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jboss.spec.javax.websocket:jboss-websocket-api_1.1_spec:2.0.0.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:4.0.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.13.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.13.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.13.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.13.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.30" level="project" />
|
||||
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.49" level="project" />
|
||||
<orderEntry type="library" name="Maven: de.ruedigermoeller:fst:2.57" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.5.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.javassist:javassist:3.29.0-GA" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.83" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.guava:guava:31.1-jre" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.guava:failureaccess:1.0.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:3.0.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.checkerframework:checker-qual:3.12.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.11.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.j2objc:j2objc-annotations:1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: it.sauronsoftware.cron4j:cron4j:2.2.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jsoup:jsoup:1.14.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.github.ben-manes.caffeine:caffeine:2.9.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.11.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.0.21.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.2.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.3.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.glassfish:javax.el:3.0.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.dropwizard.metrics:metrics-core:4.2.9" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.dropwizard.metrics:metrics-servlets:4.2.9" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.dropwizard.metrics:metrics-json:4.2.9" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.helger:profiler:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.dropwizard.metrics:metrics-healthchecks:4.2.9" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.dropwizard.metrics:metrics-jvm:4.2.9" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.jsonwebtoken:jjwt:0.9.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: c3p0:c3p0:0.9.1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.alibaba:druid:1.0.21" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-pool2:2.4.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: redis.clients:jedis:3.2.0" level="project" />
|
||||
<orderEntry type="library" scope="PROVIDED" name="Maven: org.projectlombok:lombok:1.18.16" level="project" />
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
|
||||
<orderEntry type="library" name="Maven: log4j:log4j:1.2.17" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.23.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.23.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: javax.validation:validation-api:2.0.1.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
|
||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-all:5.8.29" level="project" />
|
||||
<orderEntry type="library" name="Maven: pro.fessional:kaptcha:2.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.jhlabs:filters:2.0.235-1" level="project" />
|
||||
<orderEntry type="library" name="Maven: eu.bitwalker:UserAgentUtils:1.19" level="project" />
|
||||
</component>
|
||||
</module>
|
||||
Reference in New Issue
Block a user