commit 18eb6ceb8b2708404764d21bf7d15ee2b9e3cc24 Author: zhangzq Date: Tue Oct 28 17:43:53 2025 +0800 init diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..3b41682 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +/mvnw text eol=lf +*.cmd text eol=crlf diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..c0bcafe --- /dev/null +++ b/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,3 @@ +wrapperVersion=3.3.4 +distributionType=only-script +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.11/apache-maven-3.9.11-bin.zip diff --git a/language/.gitattributes b/language/.gitattributes new file mode 100644 index 0000000..3b41682 --- /dev/null +++ b/language/.gitattributes @@ -0,0 +1,2 @@ +/mvnw text eol=lf +*.cmd text eol=crlf diff --git a/language/.mvn/wrapper/maven-wrapper.properties b/language/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..c0bcafe --- /dev/null +++ b/language/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,3 @@ +wrapperVersion=3.3.4 +distributionType=only-script +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.11/apache-maven-3.9.11-bin.zip diff --git a/language/effective.xml b/language/effective.xml new file mode 100644 index 0000000..ea0cfe4 --- /dev/null +++ b/language/effective.xml @@ -0,0 +1,6655 @@ +[INFO] Scanning for projects... +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-release-plugin/2.5.3/maven-release-plugin-2.5.3.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-release-plugin/2.5.3/maven-release-plugin-2.5.3.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/release/maven-release/2.5.3/maven-release-2.5.3.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/release/maven-release/2.5.3/maven-release-2.5.3.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-release-plugin/2.5.3/maven-release-plugin-2.5.3.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-release-plugin/2.5.3/maven-release-plugin-2.5.3.jar (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-enforcer-plugin/3.0.0/maven-enforcer-plugin-3.0.0.pom +Progress (1): 3.4/7.7 kB Progress (1): 7.5/7.7 kB Progress (1): 7.7 kB Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-enforcer-plugin/3.0.0/maven-enforcer-plugin-3.0.0.pom (7.7 kB at 187 kB/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/enforcer/enforcer/3.0.0/enforcer-3.0.0.pom +Progress (1): 3.4/8.7 kB Progress (1): 7.5/8.7 kB Progress (1): 8.7 kB Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/enforcer/enforcer/3.0.0/enforcer-3.0.0.pom (8.7 kB at 322 kB/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-enforcer-plugin/3.0.0/maven-enforcer-plugin-3.0.0.jar +Progress (1): 4.1/27 kB Progress (1): 7.1/27 kB Progress (1): 11/27 kB Progress (1): 15/27 kB Progress (1): 19/27 kB Progress (1): 22/27 kB Progress (1): 26/27 kB Progress (1): 27 kB Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-enforcer-plugin/3.0.0/maven-enforcer-plugin-3.0.0.jar (27 kB at 343 kB/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-failsafe-plugin/2.22.2/maven-failsafe-plugin-2.22.2.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-failsafe-plugin/2.22.2/maven-failsafe-plugin-2.22.2.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-failsafe-plugin/2.22.2/maven-failsafe-plugin-2.22.2.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-failsafe-plugin/2.22.2/maven-failsafe-plugin-2.22.2.jar (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-help-plugin/3.2.0/maven-help-plugin-3.2.0.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-help-plugin/3.2.0/maven-help-plugin-3.2.0.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-help-plugin/3.2.0/maven-help-plugin-3.2.0.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugins/maven-help-plugin/3.2.0/maven-help-plugin-3.2.0.jar (0 B at 0 B/s) +[INFO] +[INFO] ------------------------< nl.sdk:language-all >------------------------- +[INFO] Building language 0.0.1-SNAPSHOT +[INFO] --------------------------------[ jar ]--------------------------------- +[INFO] +[INFO] --- maven-help-plugin:3.2.0:effective-pom (default-cli) @ language-all --- +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/maven-model/3.6.1/maven-model-3.6.1.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/maven-model/3.6.1/maven-model-3.6.1.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/maven/3.6.1/maven-3.6.1.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/maven/3.6.1/maven-3.6.1.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-generators/3.5.2/maven-plugin-tools-generators-3.5.2.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-generators/3.5.2/maven-plugin-tools-generators-3.5.2.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-api/3.5.2/maven-plugin-tools-api-3.5.2.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-api/3.5.2/maven-plugin-tools-api-3.5.2.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/net/sf/jtidy/jtidy/r938/jtidy-r938.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/net/sf/jtidy/jtidy/r938/jtidy-r938.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/shared/maven-artifact-transfer/0.10.0/maven-artifact-transfer-0.10.0.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/shared/maven-artifact-transfer/0.10.0/maven-artifact-transfer-0.10.0.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/shared/maven-shared-components/31/maven-shared-components-31.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/shared/maven-shared-components/31/maven-shared-components-31.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/reporting/maven-reporting-exec/1.4/maven-reporting-exec-1.4.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/reporting/maven-reporting-exec/1.4/maven-reporting-exec-1.4.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-6/plexus-interactivity-api-1.0-alpha-6.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-6/plexus-interactivity-api-1.0-alpha-6.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-interactivity/1.0-alpha-6/plexus-interactivity-1.0-alpha-6.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-interactivity/1.0-alpha-6/plexus-interactivity-1.0-alpha-6.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-components/1.1.9/plexus-components-1.1.9.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-components/1.1.9/plexus-components-1.1.9.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-utils/1.4/plexus-utils-1.4.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-utils/1.4/plexus-utils-1.4.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/com/thoughtworks/xstream/xstream/1.4.11.1/xstream-1.4.11.1.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/com/thoughtworks/xstream/xstream/1.4.11.1/xstream-1.4.11.1.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/com/thoughtworks/xstream/xstream-parent/1.4.11.1/xstream-parent-1.4.11.1.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/com/thoughtworks/xstream/xstream-parent/1.4.11.1/xstream-parent-1.4.11.1.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.pom +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.pom (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/maven-model/3.6.1/maven-model-3.6.1.jar +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/shared/maven-artifact-transfer/0.10.0/maven-artifact-transfer-0.10.0.jar +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/net/sf/jtidy/jtidy/r938/jtidy-r938.jar +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-api/3.5.2/maven-plugin-tools-api-3.5.2.jar +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-generators/3.5.2/maven-plugin-tools-generators-3.5.2.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/maven-model/3.6.1/maven-model-3.6.1.jar (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/reporting/maven-reporting-exec/1.4/maven-reporting-exec-1.4.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/reporting/maven-reporting-exec/1.4/maven-reporting-exec-1.4.jar (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-6/plexus-interactivity-api-1.0-alpha-6.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-generators/3.5.2/maven-plugin-tools-generators-3.5.2.jar (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/com/thoughtworks/xstream/xstream/1.4.11.1/xstream-1.4.11.1.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/plugin-tools/maven-plugin-tools-api/3.5.2/maven-plugin-tools-api-3.5.2.jar (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/apache/maven/shared/maven-artifact-transfer/0.10.0/maven-artifact-transfer-0.10.0.jar (0 B at 0 B/s) +Downloading from nexus: http://121.40.234.130:8081/repository/maven-public/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/net/sf/jtidy/jtidy/r938/jtidy-r938.jar (0 B at 0 B/s) +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-6/plexus-interactivity-api-1.0-alpha-6.jar (0 B at 0 B/s) +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/com/thoughtworks/xstream/xstream/1.4.11.1/xstream-1.4.11.1.jar (0 B at 0 B/s) +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar (0 B at 0 B/s) +Downloaded from nexus: http://121.40.234.130:8081/repository/maven-public/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar (0 B at 0 B/s) +[INFO] +Effective POMs, after inheritance, interpolation, and profiles are applied: + + + + + + + + + + + + + + + 4.0.0 + + nl.sdk + sdk-all + 0.0.1-SNAPSHOT + + nl.sdk + language-all + 0.0.1-SNAPSHOT + language + language SDK + https://spring.io/projects/spring-boot/sdk-all/language-all + + + Apache License, Version 2.0 + https://www.apache.org/licenses/LICENSE-2.0 + + + + + Pivotal + info@pivotal.io + Pivotal Software, Inc. + https://www.spring.io + + + + https://github.com/spring-projects/spring-boot/sdk-all/language-all + + + 5.16.3 + 2.7.7 + 1.9.93 + 2.19.0 + 1.9.7 + 3.21.0 + 4.0.6 + 4.1.1 + 3.2.0 + 1.11.22 + 2.9.3 + 4.13.0 + 1.5.1 + 1.15 + 2.9.0 + 3.12.0 + 1.6 + 2.11.1 + 3.2.4 + 11.5.7.0 + 1.0.11.RELEASE + 10.14.2.0 + 4.2.7 + 2.10.9.2 + 3.9.9 + 7.15.2 + 3.0.0 + 1.2.83 + 8.0.5 + 2.3.31 + 4.9.10 + 3.0.4 + 2.3.5 + 1.2.6 + 3.0.9 + 2.8.9 + 1.4.200 + 2.2 + 2.2.1 + 4.2.4 + 6.2.0.Final + 5.6.3.Final + 4.0.3 + 2.5.2 + 2.54.0 + 4.1.5 + 4.5.13 + 5.1.2 + 4.4.15 + 5.1.2 + 12.1.10.Final + 2.22 + 2.13.1 + 1.2.2 + 1.3.5 + 2.0.3 + 1.0.2 + 1.1.6 + 1.6.7 + 1.1.4 + 2.2.3 + 1.2.7 + 4.0.4 + 1.3.3 + 2.0.2 + 1.1.2 + 2.1.6 + 2.3.3 + 1.4.2 + 2.3.3 + 3.1.6 + 8 + 1.2.0 + 1.3.2 + 1.1.1 + 2.3.1 + 2.3.1 + 2.0.1 + 1.1.4 + 1.0 + 1.6.2 + 1.1 + 2.2 + 1.3 + 2.0.1.Final + 1.1 + 1.2.0 + 4.0.4.java8 + 3.4.2.Final + 2.0.6.1 + 3.7.1 + 2.35 + 9.0.52 + 2.2.0.v201112011158 + 1.1.10 + 9.4.44.v20210927 + 1.15 + 1.2.15 + 1.7.1 + 3.14.15 + 2.6.0 + 2.4.7 + 1.5.0 + 1.2 + 1.3.1 + 5.8.2 + 4.13.2 + 3.0.0 + 1.5.2 + 1.6.10 + 6.1.5.RELEASE + 4.5.0 + 2.17.0 + 1.2.9 + 1.18.22 + 2.7.4 + 3.0.0 + 3.3.0 + 3.1.0 + 3.8.1 + 3.2.0 + 2.8.2 + 3.0.0 + 2.22.2 + 3.2.0 + 2.5.2 + 3.2.2 + 3.2.0 + 3.3.1 + 3.2.0 + 3.2.4 + 3.2.1 + 2.22.2 + 3.3.2 + 1.8 + 1.8 + 1.8 + 1.8.1 + 1.9.15 + 4.0.0 + 4.4.0 + 9.4.1.jre8 + 8.0.27 + 1.9.22 + 4.3.6 + 2.0.46.Final + 4.1.72.Final + 3.14.9 + 21.3.0.0 + 1.2.2 + 42.3.1 + UTF-8 + UTF-8 + 0.12.0 + 2.3.2 + 5.0.0 + Arabba-SR11 + 5.13.1 + 0.4.0 + 1.0.3 + 2020.0.14 + @ + 4.4.0 + 1.1.1 + 1.2.1 + 1.3.8 + 2.2.21 + 1.5.3 + 2.54.0 + 3.141.59 + 4.7.6 + 4.0.1 + 1.7.32 + 1.29 + 8.8.2 + 2.4.1 + 4.3.4 + 2021.1.0 + 5.3.14 + 1.4.0 + 5.5.7 + 2.8.1 + 2.3.5.RELEASE + 2.0.5.RELEASE + 1.3.1 + 5.6.1 + 2021.1.1 + 3.1.2 + 3.36.0.3 + 1.6.7 + 2.0.1 + 3.0.4.RELEASE + 3.0.4.RELEASE + 3.0.0 + 3.0.14.RELEASE + 9.0.56 + 4.0.14 + 2.2.14.Final + 2.8.1 + 0.48 + 1.6.3 + 1.0.2 + 2.8.4 + + + + + org.apache.activemq + activemq-amqp + 5.16.3 + + + org.apache.activemq + activemq-blueprint + 5.16.3 + + + org.apache.activemq + activemq-broker + 5.16.3 + + + org.apache.activemq + activemq-camel + 5.16.3 + + + org.apache.activemq + activemq-client + 5.16.3 + + + org.apache.activemq + activemq-console + 5.16.3 + + + commons-logging + commons-logging + + + + + org.apache.activemq + activemq-http + 5.16.3 + + + org.apache.activemq + activemq-jaas + 5.16.3 + + + org.apache.activemq + activemq-jdbc-store + 5.16.3 + + + org.apache.activemq + activemq-jms-pool + 5.16.3 + + + org.apache.activemq + activemq-kahadb-store + 5.16.3 + + + org.apache.activemq + activemq-karaf + 5.16.3 + + + org.apache.activemq + activemq-leveldb-store + 5.16.3 + + + commons-logging + commons-logging + + + + + org.apache.activemq + activemq-log4j-appender + 5.16.3 + + + org.apache.activemq + activemq-mqtt + 5.16.3 + + + org.apache.activemq + activemq-openwire-generator + 5.16.3 + + + org.apache.activemq + activemq-openwire-legacy + 5.16.3 + + + org.apache.activemq + activemq-osgi + 5.16.3 + + + org.apache.activemq + activemq-partition + 5.16.3 + + + org.apache.activemq + activemq-pool + 5.16.3 + + + org.apache.activemq + activemq-ra + 5.16.3 + + + org.apache.activemq + activemq-run + 5.16.3 + + + org.apache.activemq + activemq-runtime-config + 5.16.3 + + + org.apache.activemq + activemq-shiro + 5.16.3 + + + org.apache.activemq + activemq-spring + 5.16.3 + + + commons-logging + commons-logging + + + + + org.apache.activemq + activemq-stomp + 5.16.3 + + + org.apache.activemq + activemq-web + 5.16.3 + + + antlr + antlr + 2.7.7 + + + com.google.appengine + appengine-api-1.0-sdk + 1.9.93 + + + org.apache.activemq + artemis-amqp-protocol + 2.19.0 + + + org.apache.activemq + artemis-commons + 2.19.0 + + + commons-logging + commons-logging + + + + + org.apache.activemq + artemis-core-client + 2.19.0 + + + geronimo-json_1.0_spec + org.apache.geronimo.specs + + + + + org.apache.activemq + artemis-jms-client + 2.19.0 + + + geronimo-json_1.0_spec + org.apache.geronimo.specs + + + + + org.apache.activemq + artemis-jms-server + 2.19.0 + + + geronimo-json_1.0_spec + org.apache.geronimo.specs + + + + + org.apache.activemq + artemis-journal + 2.19.0 + + + org.apache.activemq + artemis-selector + 2.19.0 + + + org.apache.activemq + artemis-server + 2.19.0 + + + commons-logging + commons-logging + + + geronimo-json_1.0_spec + org.apache.geronimo.specs + + + + + org.apache.activemq + artemis-service-extensions + 2.19.0 + + + org.aspectj + aspectjrt + 1.9.7 + + + org.aspectj + aspectjtools + 1.9.7 + + + org.aspectj + aspectjweaver + 1.9.7 + + + org.assertj + assertj-core + 3.21.0 + + + com.atomikos + transactions-jdbc + 4.0.6 + + + com.atomikos + transactions-jms + 4.0.6 + + + com.atomikos + transactions-jta + 4.0.6 + + + org.awaitility + awaitility + 4.1.1 + + + org.awaitility + awaitility-groovy + 4.1.1 + + + org.awaitility + awaitility-kotlin + 4.1.1 + + + org.awaitility + awaitility-scala + 4.1.1 + + + net.bytebuddy + byte-buddy + 1.11.22 + + + net.bytebuddy + byte-buddy-agent + 1.11.22 + + + com.github.ben-manes.caffeine + caffeine + 2.9.3 + + + com.github.ben-manes.caffeine + guava + 2.9.3 + + + com.github.ben-manes.caffeine + jcache + 2.9.3 + + + com.github.ben-manes.caffeine + simulator + 2.9.3 + + + com.datastax.oss + java-driver-core + 4.13.0 + + + jcl-over-slf4j + org.slf4j + + + + + com.fasterxml + classmate + 1.5.1 + + + commons-codec + commons-codec + 1.15 + + + org.apache.commons + commons-dbcp2 + 2.9.0 + + + commons-logging + commons-logging + + + + + org.apache.commons + commons-lang3 + 3.12.0 + + + commons-pool + commons-pool + 1.6 + + + org.apache.commons + commons-pool2 + 2.11.1 + + + com.couchbase.client + java-client + 3.2.4 + + + com.ibm.db2 + jcc + 11.5.7.0 + + + io.spring.gradle + dependency-management-plugin + 1.0.11.RELEASE + + + org.apache.derby + derby + 10.14.2.0 + + + org.apache.derby + derbyclient + 10.14.2.0 + + + net.sf.ehcache + ehcache + 2.10.9.2 + + + org.ehcache + ehcache + 3.9.9 + + + org.ehcache + ehcache-clustered + 3.9.9 + + + org.ehcache + ehcache-transactions + 3.9.9 + + + org.elasticsearch + elasticsearch + 7.15.2 + + + org.elasticsearch.client + transport + 7.15.2 + + + org.elasticsearch.client + elasticsearch-rest-client + 7.15.2 + + + commons-logging + commons-logging + + + + + org.elasticsearch.client + elasticsearch-rest-client-sniffer + 7.15.2 + + + commons-logging + commons-logging + + + + + org.elasticsearch.client + elasticsearch-rest-high-level-client + 7.15.2 + + + org.elasticsearch.distribution.integ-test-zip + elasticsearch + 7.15.2 + zip + + + org.elasticsearch.plugin + transport-netty4-client + 7.15.2 + + + de.flapdoodle.embed + de.flapdoodle.embed.mongo + 3.0.0 + + + org.flywaydb + flyway-core + 8.0.5 + + + org.freemarker + freemarker + 2.3.31 + + + org.glassfish + jakarta.el + 3.0.4 + + + org.glassfish.jaxb + codemodel + 2.3.5 + + + org.glassfish.jaxb + codemodel-annotation-compiler + 2.3.5 + + + org.glassfish.jaxb + jaxb-jxc + 2.3.5 + + + org.glassfish.jaxb + jaxb-runtime + 2.3.5 + + + org.glassfish.jaxb + jaxb-xjc + 2.3.5 + + + org.glassfish.jaxb + txw2 + 2.3.5 + + + org.glassfish.jaxb + txwc2 + 2.3.5 + + + org.glassfish.jaxb + xsom + 2.3.5 + + + org.glassfish.web + jakarta.servlet.jsp.jstl + 1.2.6 + + + com.google.code.gson + gson + 2.8.9 + + + com.h2database + h2 + 1.4.200 + + + org.hamcrest + hamcrest + 2.2 + + + org.hamcrest + hamcrest-core + 2.2 + + + org.hamcrest + hamcrest-library + 2.2 + + + com.hazelcast + hazelcast + 4.2.4 + + + com.hazelcast + hazelcast-spring + 4.2.4 + + + com.hazelcast + hazelcast-hibernate52 + 2.2.1 + + + com.hazelcast + hazelcast-hibernate53 + 2.2.1 + + + org.hibernate + hibernate-c3p0 + 5.6.3.Final + + + org.hibernate + hibernate-core + 5.6.3.Final + + + org.hibernate + hibernate-ehcache + 5.6.3.Final + + + org.hibernate + hibernate-entitymanager + 5.6.3.Final + + + org.hibernate + hibernate-envers + 5.6.3.Final + + + org.hibernate + hibernate-hikaricp + 5.6.3.Final + + + org.hibernate + hibernate-java8 + 5.6.3.Final + + + org.hibernate + hibernate-jcache + 5.6.3.Final + + + org.hibernate + hibernate-jpamodelgen + 5.6.3.Final + + + org.hibernate + hibernate-micrometer + 5.6.3.Final + + + org.hibernate + hibernate-proxool + 5.6.3.Final + + + org.hibernate + hibernate-spatial + 5.6.3.Final + + + org.hibernate + hibernate-testing + 5.6.3.Final + + + org.hibernate + hibernate-vibur + 5.6.3.Final + + + org.hibernate.validator + hibernate-validator + 6.2.0.Final + + + org.hibernate.validator + hibernate-validator-annotation-processor + 6.2.0.Final + + + com.zaxxer + HikariCP + 4.0.3 + + + org.hsqldb + hsqldb + 2.5.2 + + + net.sourceforge.htmlunit + htmlunit + 2.54.0 + + + commons-logging + commons-logging + + + + + org.apache.httpcomponents + httpasyncclient + 4.1.5 + + + commons-logging + commons-logging + + + + + org.apache.httpcomponents + fluent-hc + 4.5.13 + + + org.apache.httpcomponents + httpclient + 4.5.13 + + + commons-logging + commons-logging + + + + + org.apache.httpcomponents + httpclient-cache + 4.5.13 + + + org.apache.httpcomponents + httpclient-osgi + 4.5.13 + + + org.apache.httpcomponents + httpclient-win + 4.5.13 + + + org.apache.httpcomponents + httpmime + 4.5.13 + + + org.apache.httpcomponents.client5 + httpclient5 + 5.1.2 + + + org.apache.httpcomponents.client5 + httpclient5-cache + 5.1.2 + + + org.apache.httpcomponents.client5 + httpclient5-fluent + 5.1.2 + + + org.apache.httpcomponents.client5 + httpclient5-win + 5.1.2 + + + org.apache.httpcomponents + httpcore + 4.4.15 + + + org.apache.httpcomponents + httpcore-nio + 4.4.15 + + + org.apache.httpcomponents.core5 + httpcore5 + 5.1.2 + + + org.apache.httpcomponents.core5 + httpcore5-h2 + 5.1.2 + + + org.apache.httpcomponents.core5 + httpcore5-reactive + 5.1.2 + + + org.influxdb + influxdb-java + 2.22 + + + com.sun.activation + jakarta.activation + 1.2.2 + + + jakarta.activation + jakarta.activation-api + 1.2.2 + + + jakarta.annotation + jakarta.annotation-api + 1.3.5 + + + jakarta.jms + jakarta.jms-api + 2.0.3 + + + jakarta.json + jakarta.json-api + 1.1.6 + + + jakarta.json.bind + jakarta.json.bind-api + 1.0.2 + + + jakarta.mail + jakarta.mail-api + 1.6.7 + + + jakarta.management.j2ee + jakarta.management.j2ee-api + 1.1.4 + + + jakarta.persistence + jakarta.persistence-api + 2.2.3 + + + jakarta.servlet + jakarta.servlet-api + 4.0.4 + + + jakarta.servlet.jsp.jstl + jakarta.servlet.jsp.jstl-api + 1.2.7 + + + jakarta.transaction + jakarta.transaction-api + 1.3.3 + + + jakarta.validation + jakarta.validation-api + 2.0.2 + + + jakarta.websocket + jakarta.websocket-api + 1.1.2 + + + jakarta.ws.rs + jakarta.ws.rs-api + 2.1.6 + + + jakarta.xml.bind + jakarta.xml.bind-api + 2.3.3 + + + jakarta.xml.soap + jakarta.xml.soap-api + 1.4.2 + + + jakarta.xml.ws + jakarta.xml.ws-api + 2.3.3 + + + org.codehaus.janino + commons-compiler + 3.1.6 + + + org.codehaus.janino + commons-compiler-jdk + 3.1.6 + + + org.codehaus.janino + janino + 3.1.6 + + + javax.activation + javax.activation-api + 1.2.0 + + + javax.annotation + javax.annotation-api + 1.3.2 + + + javax.cache + cache-api + 1.1.1 + + + javax.xml.bind + jaxb-api + 2.3.1 + + + javax.xml.ws + jaxws-api + 2.3.1 + + + javax.jms + javax.jms-api + 2.0.1 + + + javax.json + javax.json-api + 1.1.4 + + + javax.json.bind + javax.json.bind-api + 1.0 + + + javax.mail + javax.mail-api + 1.6.2 + + + javax.money + money-api + 1.1 + + + javax.persistence + javax.persistence-api + 2.2 + + + javax.transaction + javax.transaction-api + 1.3 + + + javax.validation + validation-api + 2.0.1.Final + + + javax.websocket + javax.websocket-api + 1.1 + + + jaxen + jaxen + 1.2.0 + + + org.firebirdsql.jdbc + jaybird + 4.0.4.java8 + + + org.firebirdsql.jdbc + jaybird-jdk18 + 4.0.4.java8 + + + org.jboss.logging + jboss-logging + 3.4.2.Final + + + org.jdom + jdom2 + 2.0.6.1 + + + redis.clients + jedis + 3.7.1 + + + org.mortbay.jasper + apache-el + 9.0.52 + + + org.eclipse.jetty.orbit + javax.servlet.jsp + 2.2.0.v201112011158 + + + org.eclipse.jetty + jetty-reactive-httpclient + 1.1.10 + + + com.samskivert + jmustache + 1.15 + + + org.apache.johnzon + johnzon-core + 1.2.15 + + + org.apache.johnzon + johnzon-jaxrs + 1.2.15 + + + org.apache.johnzon + johnzon-jsonb + 1.2.15 + + + org.apache.johnzon + johnzon-jsonb-extras + 1.2.15 + + + org.apache.johnzon + johnzon-jsonschema + 1.2.15 + + + org.apache.johnzon + johnzon-mapper + 1.2.15 + + + org.apache.johnzon + johnzon-websocket + 1.2.15 + + + org.jolokia + jolokia-core + 1.7.1 + + + org.jooq + jooq + 3.14.15 + + + org.jooq + jooq-codegen + 3.14.15 + + + org.jooq + jooq-kotlin + 3.14.15 + + + org.jooq + jooq-meta + 3.14.15 + + + com.jayway.jsonpath + json-path + 2.6.0 + + + com.jayway.jsonpath + json-path-assert + 2.6.0 + + + net.minidev + json-smart + 2.4.7 + + + org.skyscreamer + jsonassert + 1.5.0 + + + javax.servlet + jstl + 1.2 + + + net.sourceforge.jtds + jtds + 1.3.1 + + + junit + junit + 4.13.2 + + + org.apache.kafka + connect-api + 3.0.0 + + + org.apache.kafka + connect-basic-auth-extension + 3.0.0 + + + org.apache.kafka + connect-file + 3.0.0 + + + org.apache.kafka + connect-json + 3.0.0 + + + org.apache.kafka + connect-runtime + 3.0.0 + + + org.apache.kafka + connect-transforms + 3.0.0 + + + org.apache.kafka + kafka-clients + 3.0.0 + + + org.apache.kafka + kafka-metadata + 3.0.0 + + + org.apache.kafka + kafka-log4j-appender + 3.0.0 + + + org.apache.kafka + kafka-streams + 3.0.0 + + + org.apache.kafka + kafka-streams-scala_2.12 + 3.0.0 + + + org.apache.kafka + kafka-streams-scala_2.13 + 3.0.0 + + + org.apache.kafka + kafka-streams-test-utils + 3.0.0 + + + org.apache.kafka + kafka-tools + 3.0.0 + + + org.apache.kafka + kafka_2.12 + 3.0.0 + + + org.apache.kafka + kafka_2.13 + 3.0.0 + + + io.lettuce + lettuce-core + 6.1.5.RELEASE + + + org.liquibase + liquibase-core + 4.5.0 + + + ch.qos.logback + logback-access + 1.2.9 + + + ch.qos.logback + logback-classic + 1.2.9 + + + ch.qos.logback + logback-core + 1.2.9 + + + org.projectlombok + lombok + 1.18.22 + + + org.mariadb.jdbc + mariadb-java-client + 2.7.4 + + + io.micrometer + micrometer-registry-stackdriver + 1.8.1 + + + javax.annotation-api + javax.annotation + + + + + org.jvnet.mimepull + mimepull + 1.9.15 + + + org.mockito + mockito-core + 4.0.0 + + + org.mockito + mockito-inline + 4.0.0 + + + org.mockito + mockito-junit-jupiter + 4.0.0 + + + org.mongodb + bson + 4.4.0 + + + org.mongodb + mongodb-driver-core + 4.4.0 + + + org.mongodb + mongodb-driver-legacy + 4.4.0 + + + org.mongodb + mongodb-driver-reactivestreams + 4.4.0 + + + org.mongodb + mongodb-driver-sync + 4.4.0 + + + com.microsoft.sqlserver + mssql-jdbc + 9.4.1.jre8 + + + mysql + mysql-connector-java + 8.0.27 + + + protobuf-java + com.google.protobuf + + + + + net.sourceforge.nekohtml + nekohtml + 1.9.22 + + + org.neo4j.driver + neo4j-java-driver + 4.3.6 + + + io.netty + netty-tcnative + 2.0.46.Final + + + io.netty + netty-tcnative-boringssl-static + 2.0.46.Final + + + com.squareup.okhttp3 + logging-interceptor + 3.14.9 + + + com.squareup.okhttp3 + mockwebserver + 3.14.9 + + + com.squareup.okhttp3 + okcurl + 3.14.9 + + + com.squareup.okhttp3 + okhttp + 3.14.9 + + + com.squareup.okhttp3 + okhttp-dnsoverhttps + 3.14.9 + + + com.squareup.okhttp3 + okhttp-sse + 3.14.9 + + + com.squareup.okhttp3 + okhttp-testing-support + 3.14.9 + + + com.squareup.okhttp3 + okhttp-tls + 3.14.9 + + + com.squareup.okhttp3 + okhttp-urlconnection + 3.14.9 + + + org.messaginghub + pooled-jms + 1.2.2 + + + org.postgresql + postgresql + 42.3.1 + + + org.quartz-scheduler + quartz + 2.3.2 + + + c3p0 + com.mchange + + + * + com.zaxxer + + + + + org.quartz-scheduler + quartz-jobs + 2.3.2 + + + com.rabbitmq + amqp-client + 5.13.1 + + + com.rabbitmq + stream-client + 0.4.0 + + + org.reactivestreams + reactive-streams + 1.0.3 + + + io.rest-assured + json-path + 4.4.0 + + + io.rest-assured + json-schema-validator + 4.4.0 + + + io.rest-assured + rest-assured + 4.4.0 + + + io.rest-assured + scala-support + 4.4.0 + + + io.rest-assured + spring-mock-mvc + 4.4.0 + + + io.rest-assured + spring-web-test-client + 4.4.0 + + + io.rest-assured + xml-path + 4.4.0 + + + io.reactivex + rxjava + 1.3.8 + + + io.reactivex + rxjava-reactive-streams + 1.2.1 + + + io.reactivex.rxjava2 + rxjava + 2.2.21 + + + org.springframework.boot + spring-boot + 2.6.2 + + + org.springframework.boot + spring-boot-test + 2.6.2 + + + org.springframework.boot + spring-boot-test-autoconfigure + 2.6.2 + + + org.springframework.boot + spring-boot-actuator + 2.6.2 + + + org.springframework.boot + spring-boot-actuator-autoconfigure + 2.6.2 + + + org.springframework.boot + spring-boot-autoconfigure + 2.6.2 + + + org.springframework.boot + spring-boot-autoconfigure-processor + 2.6.2 + + + org.springframework.boot + spring-boot-buildpack-platform + 2.6.2 + + + org.springframework.boot + spring-boot-configuration-metadata + 2.6.2 + + + org.springframework.boot + spring-boot-configuration-processor + 2.6.2 + + + org.springframework.boot + spring-boot-devtools + 2.6.2 + + + org.springframework.boot + spring-boot-jarmode-layertools + 2.6.2 + + + org.springframework.boot + spring-boot-loader + 2.6.2 + + + org.springframework.boot + spring-boot-loader-tools + 2.6.2 + + + org.springframework.boot + spring-boot-properties-migrator + 2.6.2 + + + org.springframework.boot + spring-boot-starter + 2.6.2 + + + org.springframework.boot + spring-boot-starter-activemq + 2.6.2 + + + org.springframework.boot + spring-boot-starter-actuator + 2.6.2 + + + org.springframework.boot + spring-boot-starter-amqp + 2.6.2 + + + org.springframework.boot + spring-boot-starter-aop + 2.6.2 + + + org.springframework.boot + spring-boot-starter-artemis + 2.6.2 + + + org.springframework.boot + spring-boot-starter-batch + 2.6.2 + + + org.springframework.boot + spring-boot-starter-cache + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-cassandra + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-cassandra-reactive + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-couchbase + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-couchbase-reactive + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-elasticsearch + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-jdbc + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-jpa + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-ldap + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-mongodb + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-mongodb-reactive + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-r2dbc + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-redis + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-redis-reactive + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-neo4j + 2.6.2 + + + org.springframework.boot + spring-boot-starter-data-rest + 2.6.2 + + + org.springframework.boot + spring-boot-starter-freemarker + 2.6.2 + + + org.springframework.boot + spring-boot-starter-groovy-templates + 2.6.2 + + + org.springframework.boot + spring-boot-starter-hateoas + 2.6.2 + + + org.springframework.boot + spring-boot-starter-integration + 2.6.2 + + + org.springframework.boot + spring-boot-starter-jdbc + 2.6.2 + + + org.springframework.boot + spring-boot-starter-jersey + 2.6.2 + + + org.springframework.boot + spring-boot-starter-jetty + 2.6.2 + + + org.springframework.boot + spring-boot-starter-jooq + 2.6.2 + + + org.springframework.boot + spring-boot-starter-json + 2.6.2 + + + org.springframework.boot + spring-boot-starter-jta-atomikos + 2.6.2 + + + org.springframework.boot + spring-boot-starter-log4j2 + 2.6.2 + + + org.springframework.boot + spring-boot-starter-logging + 2.6.2 + + + org.springframework.boot + spring-boot-starter-mail + 2.6.2 + + + org.springframework.boot + spring-boot-starter-mustache + 2.6.2 + + + org.springframework.boot + spring-boot-starter-oauth2-client + 2.6.2 + + + org.springframework.boot + spring-boot-starter-oauth2-resource-server + 2.6.2 + + + org.springframework.boot + spring-boot-starter-quartz + 2.6.2 + + + org.springframework.boot + spring-boot-starter-reactor-netty + 2.6.2 + + + org.springframework.boot + spring-boot-starter-rsocket + 2.6.2 + + + org.springframework.boot + spring-boot-starter-security + 2.6.2 + + + org.springframework.boot + spring-boot-starter-test + 2.6.2 + + + org.springframework.boot + spring-boot-starter-thymeleaf + 2.6.2 + + + org.springframework.boot + spring-boot-starter-tomcat + 2.6.2 + + + org.springframework.boot + spring-boot-starter-undertow + 2.6.2 + + + org.springframework.boot + spring-boot-starter-validation + 2.6.2 + + + org.springframework.boot + spring-boot-starter-web + 2.6.2 + + + org.springframework.boot + spring-boot-starter-webflux + 2.6.2 + + + org.springframework.boot + spring-boot-starter-websocket + 2.6.2 + + + org.springframework.boot + spring-boot-starter-web-services + 2.6.2 + + + com.sun.xml.messaging.saaj + saaj-impl + 1.5.3 + + + org.seleniumhq.selenium + selenium-api + 3.141.59 + + + org.seleniumhq.selenium + selenium-chrome-driver + 3.141.59 + + + org.seleniumhq.selenium + selenium-edge-driver + 3.141.59 + + + org.seleniumhq.selenium + selenium-firefox-driver + 3.141.59 + + + org.seleniumhq.selenium + selenium-ie-driver + 3.141.59 + + + org.seleniumhq.selenium + selenium-java + 3.141.59 + + + org.seleniumhq.selenium + selenium-opera-driver + 3.141.59 + + + org.seleniumhq.selenium + selenium-remote-driver + 3.141.59 + + + org.seleniumhq.selenium + selenium-safari-driver + 3.141.59 + + + org.seleniumhq.selenium + selenium-support + 3.141.59 + + + org.seleniumhq.selenium + htmlunit-driver + 2.54.0 + + + com.sendgrid + sendgrid-java + 4.7.6 + + + javax.servlet + javax.servlet-api + 4.0.1 + + + org.slf4j + jcl-over-slf4j + 1.7.32 + + + org.slf4j + jul-to-slf4j + 1.7.32 + + + org.slf4j + log4j-over-slf4j + 1.7.32 + + + org.slf4j + slf4j-api + 1.7.32 + + + org.slf4j + slf4j-ext + 1.7.32 + + + org.slf4j + slf4j-jcl + 1.7.32 + + + org.slf4j + slf4j-jdk14 + 1.7.32 + + + org.slf4j + slf4j-log4j12 + 1.7.32 + + + org.slf4j + slf4j-nop + 1.7.32 + + + org.slf4j + slf4j-simple + 1.7.32 + + + org.yaml + snakeyaml + 1.29 + + + org.apache.solr + solr-analysis-extras + 8.8.2 + + + org.apache.solr + solr-analytics + 8.8.2 + + + org.apache.solr + solr-cell + 8.8.2 + + + org.apache.solr + solr-core + 8.8.2 + + + org.apache.solr + solr-dataimporthandler + 8.8.2 + + + org.apache.solr + solr-dataimporthandler-extras + 8.8.2 + + + org.apache.solr + solr-langid + 8.8.2 + + + org.apache.solr + solr-ltr + 8.8.2 + + + org.apache.solr + solr-solrj + 8.8.2 + + + jcl-over-slf4j + org.slf4j + + + + + org.apache.solr + solr-test-framework + 8.8.2 + + + org.apache.solr + solr-velocity + 8.8.2 + + + org.springframework.amqp + spring-amqp + 2.4.1 + + + org.springframework.amqp + spring-rabbit + 2.4.1 + + + org.springframework.amqp + spring-rabbit-stream + 2.4.1 + + + org.springframework.amqp + spring-rabbit-junit + 2.4.1 + + + org.springframework.amqp + spring-rabbit-test + 2.4.1 + + + org.springframework.batch + spring-batch-core + 4.3.4 + + + org.springframework.batch + spring-batch-infrastructure + 4.3.4 + + + org.springframework.batch + spring-batch-integration + 4.3.4 + + + org.springframework.batch + spring-batch-test + 4.3.4 + + + org.springframework.hateoas + spring-hateoas + 1.4.0 + + + org.springframework.kafka + spring-kafka + 2.8.1 + + + org.springframework.kafka + spring-kafka-test + 2.8.1 + + + org.springframework.ldap + spring-ldap-core + 2.3.5.RELEASE + + + org.springframework.ldap + spring-ldap-core-tiger + 2.3.5.RELEASE + + + org.springframework.ldap + spring-ldap-ldif-batch + 2.3.5.RELEASE + + + org.springframework.ldap + spring-ldap-ldif-core + 2.3.5.RELEASE + + + org.springframework.ldap + spring-ldap-odm + 2.3.5.RELEASE + + + org.springframework.ldap + spring-ldap-test + 2.3.5.RELEASE + + + org.springframework.restdocs + spring-restdocs-asciidoctor + 2.0.5.RELEASE + + + org.springframework.restdocs + spring-restdocs-core + 2.0.5.RELEASE + + + org.springframework.restdocs + spring-restdocs-mockmvc + 2.0.5.RELEASE + + + org.springframework.restdocs + spring-restdocs-restassured + 2.0.5.RELEASE + + + org.springframework.restdocs + spring-restdocs-webtestclient + 2.0.5.RELEASE + + + org.springframework.retry + spring-retry + 1.3.1 + + + org.springframework.ws + spring-ws-core + 3.1.2 + + + org.springframework.ws + spring-ws-security + 3.1.2 + + + org.springframework.ws + spring-ws-support + 3.1.2 + + + org.springframework.ws + spring-ws-test + 3.1.2 + + + org.springframework.ws + spring-xml + 3.1.2 + + + org.xerial + sqlite-jdbc + 3.36.0.3 + + + com.sun.mail + jakarta.mail + 1.6.7 + + + org.thymeleaf + thymeleaf + 3.0.14.RELEASE + + + org.thymeleaf + thymeleaf-spring5 + 3.0.14.RELEASE + + + com.github.mxab.thymeleaf.extras + thymeleaf-extras-data-attribute + 2.0.1 + + + org.thymeleaf.extras + thymeleaf-extras-java8time + 3.0.4.RELEASE + + + org.thymeleaf.extras + thymeleaf-extras-springsecurity5 + 3.0.4.RELEASE + + + nz.net.ultraq.thymeleaf + thymeleaf-layout-dialect + 3.0.0 + + + org.apache.tomcat + tomcat-annotations-api + 9.0.56 + + + org.apache.tomcat + tomcat-jdbc + 9.0.56 + + + org.apache.tomcat + tomcat-jsp-api + 9.0.56 + + + org.apache.tomcat.embed + tomcat-embed-core + 9.0.56 + + + org.apache.tomcat.embed + tomcat-embed-el + 9.0.56 + + + org.apache.tomcat.embed + tomcat-embed-jasper + 9.0.56 + + + org.apache.tomcat.embed + tomcat-embed-websocket + 9.0.56 + + + com.unboundid + unboundid-ldapsdk + 4.0.14 + + + io.undertow + undertow-core + 2.2.14.Final + + + io.undertow + undertow-servlet + 2.2.14.Final + + + io.undertow + undertow-websockets-jsr + 2.2.14.Final + + + org.webjars + webjars-locator-core + 0.48 + + + wsdl4j + wsdl4j + 1.6.3 + + + org.xmlunit + xmlunit-assertj + 2.8.4 + + + org.xmlunit + xmlunit-core + 2.8.4 + + + org.xmlunit + xmlunit-legacy + 2.8.4 + + + org.xmlunit + xmlunit-matchers + 2.8.4 + + + org.xmlunit + xmlunit-placeholders + 2.8.4 + + + com.datastax.oss + java-driver-core-shaded + 4.13.0 + + + com.datastax.oss + java-driver-mapper-processor + 4.13.0 + + + com.datastax.oss + java-driver-mapper-runtime + 4.13.0 + + + com.datastax.oss + java-driver-query-builder + 4.13.0 + + + com.datastax.oss + java-driver-test-infra + 4.13.0 + + + com.datastax.oss + java-driver-metrics-micrometer + 4.13.0 + + + com.datastax.oss + java-driver-metrics-microprofile + 4.13.0 + + + com.datastax.oss + native-protocol + 1.5.0 + + + com.datastax.oss + java-driver-shaded-guava + 25.1-jre-graal-sub-1 + + + io.dropwizard.metrics + metrics-annotation + 4.2.7 + + + io.dropwizard.metrics + metrics-caffeine + 4.2.7 + + + io.dropwizard.metrics + metrics-caffeine3 + 4.2.7 + + + io.dropwizard.metrics + metrics-core + 4.2.7 + + + io.dropwizard.metrics + metrics-collectd + 4.2.7 + + + io.dropwizard.metrics + metrics-ehcache + 4.2.7 + + + io.dropwizard.metrics + metrics-graphite + 4.2.7 + + + io.dropwizard.metrics + metrics-healthchecks + 4.2.7 + + + io.dropwizard.metrics + metrics-httpclient + 4.2.7 + + + io.dropwizard.metrics + metrics-httpclient5 + 4.2.7 + + + io.dropwizard.metrics + metrics-httpasyncclient + 4.2.7 + + + io.dropwizard.metrics + metrics-jakarta-servlet + 4.2.7 + + + io.dropwizard.metrics + metrics-jakarta-servlets + 4.2.7 + + + io.dropwizard.metrics + metrics-jcache + 4.2.7 + + + io.dropwizard.metrics + metrics-jdbi + 4.2.7 + + + io.dropwizard.metrics + metrics-jdbi3 + 4.2.7 + + + io.dropwizard.metrics + metrics-jersey2 + 4.2.7 + + + io.dropwizard.metrics + metrics-jersey3 + 4.2.7 + + + io.dropwizard.metrics + metrics-jetty9 + 4.2.7 + + + io.dropwizard.metrics + metrics-jetty10 + 4.2.7 + + + io.dropwizard.metrics + metrics-jetty11 + 4.2.7 + + + io.dropwizard.metrics + metrics-jmx + 4.2.7 + + + io.dropwizard.metrics + metrics-json + 4.2.7 + + + io.dropwizard.metrics + metrics-jvm + 4.2.7 + + + io.dropwizard.metrics + metrics-log4j2 + 4.2.7 + + + io.dropwizard.metrics + metrics-logback + 4.2.7 + + + io.dropwizard.metrics + metrics-servlet + 4.2.7 + + + io.dropwizard.metrics + metrics-servlets + 4.2.7 + + + org.codehaus.groovy + groovy + 3.0.9 + + + org.codehaus.groovy + groovy-ant + 3.0.9 + + + org.codehaus.groovy + groovy-astbuilder + 3.0.9 + + + org.codehaus.groovy + groovy-bsf + 3.0.9 + + + org.codehaus.groovy + groovy-cli-commons + 3.0.9 + + + org.codehaus.groovy + groovy-cli-picocli + 3.0.9 + + + org.codehaus.groovy + groovy-console + 3.0.9 + + + org.codehaus.groovy + groovy-datetime + 3.0.9 + + + org.codehaus.groovy + groovy-dateutil + 3.0.9 + + + org.codehaus.groovy + groovy-docgenerator + 3.0.9 + + + org.codehaus.groovy + groovy-groovydoc + 3.0.9 + + + org.codehaus.groovy + groovy-groovysh + 3.0.9 + + + org.codehaus.groovy + groovy-jaxb + 3.0.9 + + + org.codehaus.groovy + groovy-jmx + 3.0.9 + + + org.codehaus.groovy + groovy-json + 3.0.9 + + + org.codehaus.groovy + groovy-jsr223 + 3.0.9 + + + org.codehaus.groovy + groovy-macro + 3.0.9 + + + org.codehaus.groovy + groovy-nio + 3.0.9 + + + org.codehaus.groovy + groovy-servlet + 3.0.9 + + + org.codehaus.groovy + groovy-sql + 3.0.9 + + + org.codehaus.groovy + groovy-swing + 3.0.9 + + + org.codehaus.groovy + groovy-templates + 3.0.9 + + + org.codehaus.groovy + groovy-test + 3.0.9 + + + org.codehaus.groovy + groovy-test-junit5 + 3.0.9 + + + org.codehaus.groovy + groovy-testng + 3.0.9 + + + org.codehaus.groovy + groovy-xml + 3.0.9 + + + org.codehaus.groovy + groovy-yaml + 3.0.9 + + + org.infinispan + infinispan-api + 12.1.10.Final + + + org.infinispan + infinispan-cachestore-jdbc + 12.1.10.Final + + + org.infinispan + infinispan-cachestore-jpa + 12.1.10.Final + + + org.infinispan + infinispan-cachestore-remote + 12.1.10.Final + + + org.infinispan + infinispan-cachestore-rocksdb + 12.1.10.Final + + + org.infinispan + infinispan-cdi-common + 12.1.10.Final + + + org.infinispan + infinispan-cdi-embedded + 12.1.10.Final + + + org.infinispan + infinispan-cdi-remote + 12.1.10.Final + + + org.infinispan + infinispan-checkstyle + 12.1.10.Final + + + org.infinispan + infinispan-cli-client + 12.1.10.Final + + + org.infinispan + infinispan-client-hotrod + 12.1.10.Final + + + org.infinispan + infinispan-client-rest + 12.1.10.Final + + + org.infinispan + infinispan-key-value-store-client + 12.1.10.Final + + + org.infinispan + infinispan-clustered-counter + 12.1.10.Final + + + org.infinispan + infinispan-clustered-lock + 12.1.10.Final + + + org.infinispan + infinispan-commons + 12.1.10.Final + + + org.infinispan + infinispan-commons-test + 12.1.10.Final + + + org.infinispan + infinispan-component-annotations + 12.1.10.Final + provided + + + org.infinispan + infinispan-component-processor + 12.1.10.Final + + + org.infinispan + infinispan-core + 12.1.10.Final + + + org.infinispan + infinispan-jboss-marshalling + 12.1.10.Final + + + org.infinispan + infinispan-extended-statistics + 12.1.10.Final + + + org.infinispan + infinispan-hibernate-cache-commons + 12.1.10.Final + + + org.infinispan + infinispan-hibernate-cache-spi + 12.1.10.Final + + + org.infinispan + infinispan-hibernate-cache-v51 + 12.1.10.Final + + + org.infinispan + infinispan-hibernate-cache-v53 + 12.1.10.Final + + + org.infinispan + infinispan-jcache-commons + 12.1.10.Final + + + org.infinispan + infinispan-jcache + 12.1.10.Final + + + org.infinispan + infinispan-jcache-remote + 12.1.10.Final + + + org.infinispan + infinispan-console + 0.14.3.Final + + + org.infinispan + infinispan-marshaller-kryo + 12.1.10.Final + + + org.infinispan + infinispan-marshaller-kryo-bundle + 12.1.10.Final + + + org.infinispan + infinispan-marshaller-protostuff + 12.1.10.Final + + + org.infinispan + infinispan-marshaller-protostuff-bundle + 12.1.10.Final + + + org.infinispan + infinispan-multimap + 12.1.10.Final + + + org.infinispan + infinispan-objectfilter + 12.1.10.Final + + + org.infinispan + infinispan-persistence-soft-index + 12.1.10.Final + + + org.infinispan + infinispan-query-core + 12.1.10.Final + + + org.infinispan + infinispan-query + 12.1.10.Final + + + org.infinispan + infinispan-query-dsl + 12.1.10.Final + + + org.infinispan + infinispan-remote-query-client + 12.1.10.Final + + + org.infinispan + infinispan-remote-query-server + 12.1.10.Final + + + org.infinispan + infinispan-scripting + 12.1.10.Final + + + org.infinispan + infinispan-server-core + 12.1.10.Final + + + org.infinispan + infinispan-server-hotrod + 12.1.10.Final + + + org.infinispan + infinispan-server-memcached + 12.1.10.Final + + + org.infinispan + infinispan-server-rest + 12.1.10.Final + + + org.infinispan + infinispan-server-router + 12.1.10.Final + + + org.infinispan + infinispan-server-runtime + 12.1.10.Final + + + org.infinispan + infinispan-server-testdriver-core + 12.1.10.Final + + + org.infinispan + infinispan-server-testdriver-junit4 + 12.1.10.Final + + + org.infinispan + infinispan-server-testdriver-junit5 + 12.1.10.Final + + + org.infinispan + infinispan-spring5-common + 12.1.10.Final + + + org.infinispan + infinispan-spring5-embedded + 12.1.10.Final + + + org.infinispan + infinispan-spring5-remote + 12.1.10.Final + + + org.infinispan + infinispan-spring-boot-starter-embedded + 12.1.10.Final + + + org.infinispan + infinispan-spring-boot-starter-remote + 12.1.10.Final + + + org.infinispan + infinispan-tasks + 12.1.10.Final + + + org.infinispan + infinispan-tasks-api + 12.1.10.Final + + + org.infinispan + infinispan-tools + 12.1.10.Final + + + org.infinispan + infinispan-anchored-keys + 12.1.10.Final + + + org.infinispan.protostream + protostream + 4.4.1.Final + + + org.infinispan.protostream + protostream-types + 4.4.1.Final + + + org.infinispan.protostream + protostream-processor + 4.4.1.Final + provided + + + org.infinispan + infinispan-cloudevents-integration + 12.1.10.Final + + + com.fasterxml.jackson.core + jackson-annotations + 2.13.1 + + + com.fasterxml.jackson.core + jackson-core + 2.13.1 + + + com.fasterxml.jackson.core + jackson-databind + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-avro + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-cbor + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-csv + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-ion + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-properties + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-protobuf + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-smile + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-toml + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-xml + 2.13.1 + + + com.fasterxml.jackson.dataformat + jackson-dataformat-yaml + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-eclipse-collections + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-guava + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-hibernate4 + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-hibernate5 + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-hibernate5-jakarta + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-hppc + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-jakarta-jsonp + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-jaxrs + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-joda + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-joda-money + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-jdk8 + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-json-org + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-jsr353 + 2.13.1 + + + com.fasterxml.jackson.datatype + jackson-datatype-pcollections + 2.13.1 + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-base + 2.13.1 + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-cbor-provider + 2.13.1 + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider + 2.13.1 + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-smile-provider + 2.13.1 + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-xml-provider + 2.13.1 + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-yaml-provider + 2.13.1 + + + com.fasterxml.jackson.jakarta.rs + jackson-jakarta-rs-base + 2.13.1 + + + com.fasterxml.jackson.jakarta.rs + jackson-jakarta-rs-cbor-provider + 2.13.1 + + + com.fasterxml.jackson.jakarta.rs + jackson-jakarta-rs-json-provider + 2.13.1 + + + com.fasterxml.jackson.jakarta.rs + jackson-jakarta-rs-smile-provider + 2.13.1 + + + com.fasterxml.jackson.jakarta.rs + jackson-jakarta-rs-xml-provider + 2.13.1 + + + com.fasterxml.jackson.jakarta.rs + jackson-jakarta-rs-yaml-provider + 2.13.1 + + + com.fasterxml.jackson.jr + jackson-jr-all + 2.13.1 + + + com.fasterxml.jackson.jr + jackson-jr-annotation-support + 2.13.1 + + + com.fasterxml.jackson.jr + jackson-jr-objects + 2.13.1 + + + com.fasterxml.jackson.jr + jackson-jr-retrofit2 + 2.13.1 + + + com.fasterxml.jackson.jr + jackson-jr-stree + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-afterburner + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-blackbird + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-guice + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-jaxb-annotations + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-jakarta-xmlbind-annotations + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-jsonSchema + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-kotlin + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-mrbean + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-no-ctor-deser + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-osgi + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-parameter-names + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-paranamer + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-scala_2.11 + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-scala_2.12 + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-scala_2.13 + 2.13.1 + + + com.fasterxml.jackson.module + jackson-module-scala_3 + 2.13.1 + + + org.glassfish.jersey.core + jersey-common + 2.35 + + + org.glassfish.jersey.core + jersey-client + 2.35 + + + org.glassfish.jersey.core + jersey-server + 2.35 + + + org.glassfish.jersey.bundles + jaxrs-ri + 2.35 + + + org.glassfish.jersey.connectors + jersey-apache-connector + 2.35 + + + org.glassfish.jersey.connectors + jersey-helidon-connector + 2.35 + + + org.glassfish.jersey.connectors + jersey-grizzly-connector + 2.35 + + + org.glassfish.jersey.connectors + jersey-jetty-connector + 2.35 + + + org.glassfish.jersey.connectors + jersey-jdk-connector + 2.35 + + + org.glassfish.jersey.connectors + jersey-netty-connector + 2.35 + + + org.glassfish.jersey.containers + jersey-container-jetty-http + 2.35 + + + org.glassfish.jersey.containers + jersey-container-grizzly2-http + 2.35 + + + org.glassfish.jersey.containers + jersey-container-grizzly2-servlet + 2.35 + + + org.glassfish.jersey.containers + jersey-container-jetty-servlet + 2.35 + + + org.glassfish.jersey.containers + jersey-container-jdk-http + 2.35 + + + org.glassfish.jersey.containers + jersey-container-netty-http + 2.35 + + + org.glassfish.jersey.containers + jersey-container-servlet + 2.35 + + + org.glassfish.jersey.containers + jersey-container-servlet-core + 2.35 + + + org.glassfish.jersey.containers + jersey-container-simple-http + 2.35 + + + org.glassfish.jersey.containers.glassfish + jersey-gf-ejb + 2.35 + + + org.glassfish.jersey.ext + jersey-bean-validation + 2.35 + + + org.glassfish.jersey.ext + jersey-entity-filtering + 2.35 + + + org.glassfish.jersey.ext + jersey-metainf-services + 2.35 + + + org.glassfish.jersey.ext.microprofile + jersey-mp-config + 2.35 + + + org.glassfish.jersey.ext + jersey-mvc + 2.35 + + + org.glassfish.jersey.ext + jersey-mvc-bean-validation + 2.35 + + + org.glassfish.jersey.ext + jersey-mvc-freemarker + 2.35 + + + org.glassfish.jersey.ext + jersey-mvc-jsp + 2.35 + + + org.glassfish.jersey.ext + jersey-mvc-mustache + 2.35 + + + org.glassfish.jersey.ext + jersey-proxy-client + 2.35 + + + org.glassfish.jersey.ext + jersey-servlet-portability + 2.35 + + + org.glassfish.jersey.ext + jersey-spring4 + 2.35 + + + org.glassfish.jersey.ext + jersey-spring5 + 2.35 + + + org.glassfish.jersey.ext + jersey-declarative-linking + 2.35 + + + org.glassfish.jersey.ext + jersey-wadl-doclet + 2.35 + + + org.glassfish.jersey.ext.cdi + jersey-weld2-se + 2.35 + + + org.glassfish.jersey.ext.cdi + jersey-cdi1x + 2.35 + + + org.glassfish.jersey.ext.cdi + jersey-cdi1x-transaction + 2.35 + + + org.glassfish.jersey.ext.cdi + jersey-cdi1x-validation + 2.35 + + + org.glassfish.jersey.ext.cdi + jersey-cdi1x-servlet + 2.35 + + + org.glassfish.jersey.ext.cdi + jersey-cdi1x-ban-custom-hk2-binding + 2.35 + + + org.glassfish.jersey.ext.cdi + jersey-cdi-rs-inject + 2.35 + + + org.glassfish.jersey.ext.rx + jersey-rx-client-guava + 2.35 + + + org.glassfish.jersey.ext.rx + jersey-rx-client-rxjava + 2.35 + + + org.glassfish.jersey.ext.rx + jersey-rx-client-rxjava2 + 2.35 + + + org.glassfish.jersey.ext.microprofile + jersey-mp-rest-client + 2.35 + + + org.glassfish.jersey.media + jersey-media-jaxb + 2.35 + + + org.glassfish.jersey.media + jersey-media-json-jackson + 2.35 + + + org.glassfish.jersey.media + jersey-media-json-jettison + 2.35 + + + org.glassfish.jersey.media + jersey-media-json-processing + 2.35 + + + org.glassfish.jersey.media + jersey-media-json-binding + 2.35 + + + org.glassfish.jersey.media + jersey-media-kryo + 2.35 + + + org.glassfish.jersey.media + jersey-media-moxy + 2.35 + + + org.glassfish.jersey.media + jersey-media-multipart + 2.35 + + + org.glassfish.jersey.media + jersey-media-sse + 2.35 + + + org.glassfish.jersey.security + oauth1-client + 2.35 + + + org.glassfish.jersey.security + oauth1-server + 2.35 + + + org.glassfish.jersey.security + oauth1-signature + 2.35 + + + org.glassfish.jersey.security + oauth2-client + 2.35 + + + org.glassfish.jersey.inject + jersey-hk2 + 2.35 + + + org.glassfish.jersey.inject + jersey-cdi2-se + 2.35 + + + org.glassfish.jersey.test-framework + jersey-test-framework-core + 2.35 + + + org.glassfish.jersey.test-framework.providers + jersey-test-framework-provider-bundle + 2.35 + pom + + + org.glassfish.jersey.test-framework.providers + jersey-test-framework-provider-external + 2.35 + + + org.glassfish.jersey.test-framework.providers + jersey-test-framework-provider-grizzly2 + 2.35 + + + org.glassfish.jersey.test-framework.providers + jersey-test-framework-provider-inmemory + 2.35 + + + org.glassfish.jersey.test-framework.providers + jersey-test-framework-provider-jdk-http + 2.35 + + + org.glassfish.jersey.test-framework.providers + jersey-test-framework-provider-simple + 2.35 + + + org.glassfish.jersey.test-framework.providers + jersey-test-framework-provider-jetty + 2.35 + + + org.glassfish.jersey.test-framework + jersey-test-framework-util + 2.35 + + + org.eclipse.jetty + apache-jsp + 9.4.44.v20210927 + + + org.eclipse.jetty + apache-jstl + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-client + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-java-client + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-java-server + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-openjdk8-client + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-openjdk8-server + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-conscrypt-client + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-conscrypt-server + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-alpn-server + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-annotations + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-ant + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-client + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-continuation + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-deploy + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-distribution + 9.4.44.v20210927 + zip + + + org.eclipse.jetty + jetty-distribution + 9.4.44.v20210927 + tar.gz + + + org.eclipse.jetty.fcgi + fcgi-client + 9.4.44.v20210927 + + + org.eclipse.jetty.fcgi + fcgi-server + 9.4.44.v20210927 + + + org.eclipse.jetty.gcloud + jetty-gcloud-session-manager + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-home + 9.4.44.v20210927 + zip + + + org.eclipse.jetty + jetty-home + 9.4.44.v20210927 + tar.gz + + + org.eclipse.jetty + jetty-http + 9.4.44.v20210927 + + + org.eclipse.jetty.http2 + http2-client + 9.4.44.v20210927 + + + org.eclipse.jetty.http2 + http2-common + 9.4.44.v20210927 + + + org.eclipse.jetty.http2 + http2-hpack + 9.4.44.v20210927 + + + org.eclipse.jetty.http2 + http2-http-client-transport + 9.4.44.v20210927 + + + org.eclipse.jetty.http2 + http2-server + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-http-spi + 9.4.44.v20210927 + + + org.eclipse.jetty + infinispan-common + 9.4.44.v20210927 + + + org.eclipse.jetty + infinispan-remote-query + 9.4.44.v20210927 + + + org.eclipse.jetty + infinispan-embedded-query + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-hazelcast + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-io + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-jaas + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-jaspi + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-jmx + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-jndi + 9.4.44.v20210927 + + + org.eclipse.jetty.memcached + jetty-memcached-sessions + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-nosql + 9.4.44.v20210927 + + + org.eclipse.jetty.osgi + jetty-osgi-boot + 9.4.44.v20210927 + + + org.eclipse.jetty.osgi + jetty-osgi-boot-jsp + 9.4.44.v20210927 + + + org.eclipse.jetty.osgi + jetty-osgi-boot-warurl + 9.4.44.v20210927 + + + org.eclipse.jetty.osgi + jetty-httpservice + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-plus + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-proxy + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-quickstart + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-rewrite + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-security + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-openid + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-server + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-servlet + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-servlets + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-spring + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-unixsocket + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-util + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-util-ajax + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-webapp + 9.4.44.v20210927 + + + org.eclipse.jetty.websocket + javax-websocket-client-impl + 9.4.44.v20210927 + + + org.eclipse.jetty.websocket + javax-websocket-server-impl + 9.4.44.v20210927 + + + org.eclipse.jetty.websocket + websocket-api + 9.4.44.v20210927 + + + org.eclipse.jetty.websocket + websocket-client + 9.4.44.v20210927 + + + org.eclipse.jetty.websocket + websocket-common + 9.4.44.v20210927 + + + org.eclipse.jetty.websocket + websocket-server + 9.4.44.v20210927 + + + org.eclipse.jetty.websocket + websocket-servlet + 9.4.44.v20210927 + + + org.eclipse.jetty + jetty-xml + 9.4.44.v20210927 + + + org.junit.jupiter + junit-jupiter + 5.8.2 + + + org.junit.jupiter + junit-jupiter-api + 5.8.2 + + + org.junit.jupiter + junit-jupiter-engine + 5.8.2 + + + org.junit.jupiter + junit-jupiter-migrationsupport + 5.8.2 + + + org.junit.jupiter + junit-jupiter-params + 5.8.2 + + + org.junit.platform + junit-platform-commons + 1.8.2 + + + org.junit.platform + junit-platform-console + 1.8.2 + + + org.junit.platform + junit-platform-engine + 1.8.2 + + + org.junit.platform + junit-platform-jfr + 1.8.2 + + + org.junit.platform + junit-platform-launcher + 1.8.2 + + + org.junit.platform + junit-platform-reporting + 1.8.2 + + + org.junit.platform + junit-platform-runner + 1.8.2 + + + org.junit.platform + junit-platform-suite + 1.8.2 + + + org.junit.platform + junit-platform-suite-api + 1.8.2 + + + org.junit.platform + junit-platform-suite-commons + 1.8.2 + + + org.junit.platform + junit-platform-suite-engine + 1.8.2 + + + org.junit.platform + junit-platform-testkit + 1.8.2 + + + org.junit.vintage + junit-vintage-engine + 5.8.2 + + + org.jetbrains.kotlin + kotlin-stdlib + 1.6.10 + + + org.jetbrains.kotlin + kotlin-stdlib-jdk7 + 1.6.10 + + + org.jetbrains.kotlin + kotlin-stdlib-jdk8 + 1.6.10 + + + org.jetbrains.kotlin + kotlin-stdlib-js + 1.6.10 + + + org.jetbrains.kotlin + kotlin-stdlib-common + 1.6.10 + + + org.jetbrains.kotlin + kotlin-reflect + 1.6.10 + + + org.jetbrains.kotlin + kotlin-osgi-bundle + 1.6.10 + + + org.jetbrains.kotlin + kotlin-test + 1.6.10 + + + org.jetbrains.kotlin + kotlin-test-junit + 1.6.10 + + + org.jetbrains.kotlin + kotlin-test-junit5 + 1.6.10 + + + org.jetbrains.kotlin + kotlin-test-testng + 1.6.10 + + + org.jetbrains.kotlin + kotlin-test-js + 1.6.10 + + + org.jetbrains.kotlin + kotlin-test-common + 1.6.10 + + + org.jetbrains.kotlin + kotlin-test-annotations-common + 1.6.10 + + + org.jetbrains.kotlin + kotlin-main-kts + 1.6.10 + + + org.jetbrains.kotlin + kotlin-script-runtime + 1.6.10 + + + org.jetbrains.kotlin + kotlin-script-util + 1.6.10 + + + org.jetbrains.kotlin + kotlin-scripting-common + 1.6.10 + + + org.jetbrains.kotlin + kotlin-scripting-jvm + 1.6.10 + + + org.jetbrains.kotlin + kotlin-scripting-jvm-host + 1.6.10 + + + org.jetbrains.kotlin + kotlin-scripting-ide-services + 1.6.10 + + + org.jetbrains.kotlin + kotlin-compiler + 1.6.10 + + + org.jetbrains.kotlin + kotlin-compiler-embeddable + 1.6.10 + + + org.jetbrains.kotlin + kotlin-daemon-client + 1.6.10 + + + org.jetbrains.kotlinx + kotlinx-coroutines-android + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-core-jvm + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-core + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-debug + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-guava + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-javafx + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-jdk8 + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-jdk9 + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-play-services + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-reactive + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-reactor + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-rx2 + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-rx3 + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-slf4j + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-swing + 1.5.2 + + + org.jetbrains.kotlinx + kotlinx-coroutines-test + 1.5.2 + + + org.apache.logging.log4j + log4j-api + 2.17.0 + + + org.apache.logging.log4j + log4j-core + 2.17.0 + + + org.apache.logging.log4j + log4j-layout-template-json + 2.17.0 + + + org.apache.logging.log4j + log4j-1.2-api + 2.17.0 + + + org.apache.logging.log4j + log4j-jcl + 2.17.0 + + + org.apache.logging.log4j + log4j-flume-ng + 2.17.0 + + + org.apache.logging.log4j + log4j-taglib + 2.17.0 + + + org.apache.logging.log4j + log4j-jmx-gui + 2.17.0 + + + org.apache.logging.log4j + log4j-slf4j-impl + 2.17.0 + + + org.apache.logging.log4j + log4j-slf4j18-impl + 2.17.0 + + + org.apache.logging.log4j + log4j-to-slf4j + 2.17.0 + + + org.apache.logging.log4j + log4j-appserver + 2.17.0 + + + org.apache.logging.log4j + log4j-web + 2.17.0 + + + org.apache.logging.log4j + log4j-couchdb + 2.17.0 + + + org.apache.logging.log4j + log4j-mongodb4 + 2.17.0 + + + org.apache.logging.log4j + log4j-mongodb3 + 2.17.0 + + + org.apache.logging.log4j + log4j-cassandra + 2.17.0 + + + org.apache.logging.log4j + log4j-jpa + 2.17.0 + + + org.apache.logging.log4j + log4j-iostreams + 2.17.0 + + + org.apache.logging.log4j + log4j-jul + 2.17.0 + + + org.apache.logging.log4j + log4j-jpl + 2.17.0 + + + org.apache.logging.log4j + log4j-liquibase + 2.17.0 + + + org.apache.logging.log4j + log4j-docker + 2.17.0 + + + org.apache.logging.log4j + log4j-kubernetes + 2.17.0 + + + org.apache.logging.log4j + log4j-spring-boot + 2.17.0 + + + org.apache.logging.log4j + log4j-spring-cloud-config-client + 2.17.0 + + + io.micrometer + micrometer-core + 1.8.1 + + + io.micrometer + micrometer-jersey2 + 1.8.1 + + + io.micrometer + micrometer-registry-appoptics + 1.8.1 + + + io.micrometer + micrometer-registry-atlas + 1.8.1 + + + io.micrometer + micrometer-registry-azure-monitor + 1.8.1 + + + io.micrometer + micrometer-registry-cloudwatch + 1.8.1 + + + io.micrometer + micrometer-registry-cloudwatch2 + 1.8.1 + + + io.micrometer + micrometer-registry-datadog + 1.8.1 + + + io.micrometer + micrometer-registry-dynatrace + 1.8.1 + + + io.micrometer + micrometer-registry-elastic + 1.8.1 + + + io.micrometer + micrometer-registry-ganglia + 1.8.1 + + + io.micrometer + micrometer-registry-graphite + 1.8.1 + + + io.micrometer + micrometer-registry-health + 1.8.1 + + + io.micrometer + micrometer-registry-humio + 1.8.1 + + + io.micrometer + micrometer-registry-influx + 1.8.1 + + + io.micrometer + micrometer-registry-jmx + 1.8.1 + + + io.micrometer + micrometer-registry-kairos + 1.8.1 + + + io.micrometer + micrometer-registry-new-relic + 1.8.1 + + + io.micrometer + micrometer-registry-opentsdb + 1.8.1 + + + io.micrometer + micrometer-registry-prometheus + 1.8.1 + + + io.micrometer + micrometer-registry-signalfx + 1.8.1 + + + io.micrometer + micrometer-registry-statsd + 1.8.1 + + + io.micrometer + micrometer-registry-wavefront + 1.8.1 + + + io.micrometer + micrometer-test + 1.8.1 + + + io.netty + netty-buffer + 4.1.72.Final + + + io.netty + netty-codec + 4.1.72.Final + + + io.netty + netty-codec-dns + 4.1.72.Final + + + io.netty + netty-codec-haproxy + 4.1.72.Final + + + io.netty + netty-codec-http + 4.1.72.Final + + + io.netty + netty-codec-http2 + 4.1.72.Final + + + io.netty + netty-codec-memcache + 4.1.72.Final + + + io.netty + netty-codec-mqtt + 4.1.72.Final + + + io.netty + netty-codec-redis + 4.1.72.Final + + + io.netty + netty-codec-smtp + 4.1.72.Final + + + io.netty + netty-codec-socks + 4.1.72.Final + + + io.netty + netty-codec-stomp + 4.1.72.Final + + + io.netty + netty-codec-xml + 4.1.72.Final + + + io.netty + netty-common + 4.1.72.Final + + + io.netty + netty-dev-tools + 4.1.72.Final + + + io.netty + netty-handler + 4.1.72.Final + + + io.netty + netty-handler-proxy + 4.1.72.Final + + + io.netty + netty-resolver + 4.1.72.Final + + + io.netty + netty-resolver-dns + 4.1.72.Final + + + io.netty + netty-transport + 4.1.72.Final + + + io.netty + netty-transport-rxtx + 4.1.72.Final + + + io.netty + netty-transport-sctp + 4.1.72.Final + + + io.netty + netty-transport-udt + 4.1.72.Final + + + io.netty + netty-example + 4.1.72.Final + + + io.netty + netty-all + 4.1.72.Final + + + io.netty + netty-resolver-dns-classes-macos + 4.1.72.Final + + + io.netty + netty-resolver-dns-native-macos + 4.1.72.Final + + + io.netty + netty-resolver-dns-native-macos + 4.1.72.Final + osx-x86_64 + + + io.netty + netty-resolver-dns-native-macos + 4.1.72.Final + osx-aarch_64 + + + io.netty + netty-transport-native-unix-common + 4.1.72.Final + + + io.netty + netty-transport-native-unix-common + 4.1.72.Final + linux-aarch_64 + + + io.netty + netty-transport-native-unix-common + 4.1.72.Final + linux-x86_64 + + + io.netty + netty-transport-native-unix-common + 4.1.72.Final + osx-x86_64 + + + io.netty + netty-transport-native-unix-common + 4.1.72.Final + osx-aarch_64 + + + io.netty + netty-transport-classes-epoll + 4.1.72.Final + + + io.netty + netty-transport-native-epoll + 4.1.72.Final + + + io.netty + netty-transport-native-epoll + 4.1.72.Final + linux-aarch_64 + + + io.netty + netty-transport-native-epoll + 4.1.72.Final + linux-x86_64 + + + io.netty + netty-transport-classes-kqueue + 4.1.72.Final + + + io.netty + netty-transport-native-kqueue + 4.1.72.Final + + + io.netty + netty-transport-native-kqueue + 4.1.72.Final + osx-x86_64 + + + io.netty + netty-transport-native-kqueue + 4.1.72.Final + osx-aarch_64 + + + io.netty + netty-tcnative-classes + 2.0.46.Final + + + io.netty + netty-tcnative + 2.0.46.Final + linux-x86_64 + + + io.netty + netty-tcnative + 2.0.46.Final + linux-x86_64-fedora + + + io.netty + netty-tcnative + 2.0.46.Final + linux-aarch_64-fedora + + + io.netty + netty-tcnative + 2.0.46.Final + osx-x86_64 + + + io.netty + netty-tcnative-boringssl-static + 2.0.46.Final + linux-x86_64 + + + io.netty + netty-tcnative-boringssl-static + 2.0.46.Final + linux-aarch_64 + + + io.netty + netty-tcnative-boringssl-static + 2.0.46.Final + osx-x86_64 + + + io.netty + netty-tcnative-boringssl-static + 2.0.46.Final + osx-aarch_64 + + + io.netty + netty-tcnative-boringssl-static + 2.0.46.Final + windows-x86_64 + + + com.oracle.database.jdbc + ojdbc11 + 21.3.0.0 + + + com.oracle.database.jdbc + ojdbc8 + 21.3.0.0 + + + com.oracle.database.jdbc + ucp + 21.3.0.0 + + + com.oracle.database.jdbc + ucp11 + 21.3.0.0 + + + com.oracle.database.jdbc + rsi + 21.3.0.0 + + + com.oracle.database.security + oraclepki + 21.3.0.0 + + + com.oracle.database.security + osdt_core + 21.3.0.0 + + + com.oracle.database.security + osdt_cert + 21.3.0.0 + + + com.oracle.database.ha + simplefan + 21.3.0.0 + + + com.oracle.database.ha + ons + 21.3.0.0 + + + com.oracle.database.nls + orai18n + 21.3.0.0 + + + com.oracle.database.xml + xdb + 21.3.0.0 + + + com.oracle.database.xml + xmlparserv2 + 21.3.0.0 + + + com.oracle.database.jdbc.debug + ojdbc11_g + 21.3.0.0 + + + com.oracle.database.jdbc.debug + ojdbc8_g + 21.3.0.0 + + + com.oracle.database.jdbc.debug + ojdbc8dms_g + 21.3.0.0 + + + com.oracle.database.jdbc.debug + ojdbc11dms_g + 21.3.0.0 + + + com.oracle.database.observability + dms + 21.3.0.0 + + + com.oracle.database.observability + ojdbc11dms + 21.3.0.0 + + + com.oracle.database.observability + ojdbc8dms + 21.3.0.0 + + + com.oracle.database.jdbc + ojdbc11-production + 21.3.0.0 + pom + + + com.oracle.database.jdbc + ojdbc8-production + 21.3.0.0 + pom + + + com.oracle.database.observability + ojdbc8-observability + 21.3.0.0 + pom + + + com.oracle.database.observability + ojdbc11-observability + 21.3.0.0 + pom + + + com.oracle.database.jdbc.debug + ojdbc8-debug + 21.3.0.0 + pom + + + com.oracle.database.jdbc.debug + ojdbc11-debug + 21.3.0.0 + pom + + + com.oracle.database.jdbc.debug + ojdbc8-observability-debug + 21.3.0.0 + pom + + + com.oracle.database.jdbc.debug + ojdbc11-observability-debug + 21.3.0.0 + pom + + + io.prometheus + simpleclient + 0.12.0 + + + io.prometheus + simpleclient_caffeine + 0.12.0 + + + io.prometheus + simpleclient_common + 0.12.0 + + + io.prometheus + simpleclient_dropwizard + 0.12.0 + + + io.prometheus + simpleclient_graphite_bridge + 0.12.0 + + + io.prometheus + simpleclient_guava + 0.12.0 + + + io.prometheus + simpleclient_hibernate + 0.12.0 + + + io.prometheus + simpleclient_hotspot + 0.12.0 + + + io.prometheus + simpleclient_httpserver + 0.12.0 + + + io.prometheus + simpleclient_jetty + 0.12.0 + + + io.prometheus + simpleclient_jetty_jdk8 + 0.12.0 + + + io.prometheus + simpleclient_log4j + 0.12.0 + + + io.prometheus + simpleclient_log4j2 + 0.12.0 + + + io.prometheus + simpleclient_logback + 0.12.0 + + + io.prometheus + simpleclient_pushgateway + 0.12.0 + + + io.prometheus + simpleclient_servlet + 0.12.0 + + + io.prometheus + simpleclient_servlet_jakarta + 0.12.0 + + + io.prometheus + simpleclient_spring_boot + 0.12.0 + + + io.prometheus + simpleclient_spring_web + 0.12.0 + + + io.prometheus + simpleclient_tracer_otel + 0.12.0 + + + io.prometheus + simpleclient_tracer_otel_agent + 0.12.0 + + + io.prometheus + simpleclient_vertx + 0.12.0 + + + com.querydsl + querydsl-core + 5.0.0 + + + com.querydsl + querydsl-codegen + 5.0.0 + + + com.querydsl + querydsl-codegen-utils + 5.0.0 + + + com.querydsl + querydsl-spatial + 5.0.0 + + + com.querydsl + querydsl-apt + 5.0.0 + + + com.querydsl + querydsl-collections + 5.0.0 + + + com.querydsl + querydsl-guava + 5.0.0 + + + com.querydsl + querydsl-sql + 5.0.0 + + + com.querydsl + querydsl-sql-spatial + 5.0.0 + + + com.querydsl + querydsl-sql-codegen + 5.0.0 + + + com.querydsl + querydsl-sql-spring + 5.0.0 + + + com.querydsl + querydsl-jpa + 5.0.0 + + + com.querydsl + querydsl-jpa-codegen + 5.0.0 + + + com.querydsl + querydsl-jdo + 5.0.0 + + + com.querydsl + querydsl-kotlin-codegen + 5.0.0 + + + com.querydsl + querydsl-lucene3 + 5.0.0 + + + com.querydsl + querydsl-lucene4 + 5.0.0 + + + com.querydsl + querydsl-lucene5 + 5.0.0 + + + com.querydsl + querydsl-hibernate-search + 5.0.0 + + + com.querydsl + querydsl-mongodb + 5.0.0 + + + com.querydsl + querydsl-scala + 5.0.0 + + + com.querydsl + querydsl-kotlin + 5.0.0 + + + com.google.cloud + cloud-spanner-r2dbc + 0.6.0 + + + com.oracle.database.r2dbc + oracle-r2dbc + 0.1.0 + + + io.r2dbc + r2dbc-h2 + 0.8.4.RELEASE + + + org.mariadb + r2dbc-mariadb + 1.0.2 + + + io.r2dbc + r2dbc-mssql + 0.8.7.RELEASE + + + dev.miku + r2dbc-mysql + 0.8.2.RELEASE + + + io.r2dbc + r2dbc-postgresql + 0.8.10.RELEASE + + + io.r2dbc + r2dbc-pool + 0.8.7.RELEASE + + + io.r2dbc + r2dbc-proxy + 0.8.8.RELEASE + + + io.r2dbc + r2dbc-spi + 0.8.6.RELEASE + + + io.projectreactor + reactor-core + 3.4.13 + + + io.projectreactor + reactor-test + 3.4.13 + + + io.projectreactor + reactor-tools + 3.4.13 + + + io.projectreactor.addons + reactor-extra + 3.4.6 + + + io.projectreactor.addons + reactor-adapter + 3.4.6 + + + io.projectreactor.netty + reactor-netty + 1.0.14 + + + io.projectreactor.netty + reactor-netty-core + 1.0.14 + + + io.projectreactor.netty + reactor-netty-http + 1.0.14 + + + io.projectreactor.netty + reactor-netty-http-brave + 1.0.14 + + + io.projectreactor.addons + reactor-pool + 0.2.7 + + + io.projectreactor.kafka + reactor-kafka + 1.3.8 + + + io.projectreactor.rabbitmq + reactor-rabbitmq + 1.5.4 + + + io.projectreactor.kotlin + reactor-kotlin-extensions + 1.1.5 + + + io.rsocket + rsocket-core + 1.1.1 + + + io.rsocket + rsocket-load-balancer + 1.1.1 + + + io.rsocket + rsocket-micrometer + 1.1.1 + + + io.rsocket + rsocket-test + 1.1.1 + + + io.rsocket + rsocket-transport-local + 1.1.1 + + + io.rsocket + rsocket-transport-netty + 1.1.1 + + + org.springframework.data + spring-data-cassandra + 3.3.0 + + + org.springframework.data + spring-data-commons + 2.6.0 + + + org.springframework.data + spring-data-couchbase + 4.3.0 + + + org.springframework.data + spring-data-elasticsearch + 4.3.0 + + + org.springframework.data + spring-data-geode + 2.6.0 + + + org.springframework.data + spring-data-jdbc + 2.3.0 + + + org.springframework.data + spring-data-relational + 2.3.0 + + + org.springframework.data + spring-data-jpa + 2.6.0 + + + org.springframework.data + spring-data-mongodb + 3.3.0 + + + org.springframework.data + spring-data-neo4j + 6.2.0 + + + org.springframework.data + spring-data-r2dbc + 1.4.0 + + + org.springframework.data + spring-data-redis + 2.6.0 + + + org.springframework.data + spring-data-rest-webmvc + 3.6.0 + + + org.springframework.data + spring-data-rest-core + 3.6.0 + + + org.springframework.data + spring-data-rest-hal-explorer + 3.6.0 + + + org.springframework.data + spring-data-keyvalue + 2.6.0 + + + org.springframework.data + spring-data-envers + 2.6.0 + + + org.springframework.data + spring-data-ldap + 2.6.0 + + + org.springframework + spring-aop + 5.3.14 + + + org.springframework + spring-aspects + 5.3.14 + + + org.springframework + spring-beans + 5.3.14 + + + org.springframework + spring-context + 5.3.14 + + + org.springframework + spring-context-indexer + 5.3.14 + + + org.springframework + spring-context-support + 5.3.14 + + + org.springframework + spring-core + 5.3.14 + + + org.springframework + spring-expression + 5.3.14 + + + org.springframework + spring-instrument + 5.3.14 + + + org.springframework + spring-jcl + 5.3.14 + + + org.springframework + spring-jdbc + 5.3.14 + + + org.springframework + spring-jms + 5.3.14 + + + org.springframework + spring-messaging + 5.3.14 + + + org.springframework + spring-orm + 5.3.14 + + + org.springframework + spring-oxm + 5.3.14 + + + org.springframework + spring-r2dbc + 5.3.14 + + + org.springframework + spring-test + 5.3.14 + + + org.springframework + spring-tx + 5.3.14 + + + org.springframework + spring-web + 5.3.14 + + + org.springframework + spring-webflux + 5.3.14 + + + org.springframework + spring-webmvc + 5.3.14 + + + org.springframework + spring-websocket + 5.3.14 + + + org.springframework.integration + spring-integration-amqp + 5.5.7 + + + org.springframework.integration + spring-integration-core + 5.5.7 + + + org.springframework.integration + spring-integration-event + 5.5.7 + + + org.springframework.integration + spring-integration-feed + 5.5.7 + + + org.springframework.integration + spring-integration-file + 5.5.7 + + + org.springframework.integration + spring-integration-ftp + 5.5.7 + + + org.springframework.integration + spring-integration-gemfire + 5.5.7 + + + org.springframework.integration + spring-integration-groovy + 5.5.7 + + + org.springframework.integration + spring-integration-http + 5.5.7 + + + org.springframework.integration + spring-integration-ip + 5.5.7 + + + org.springframework.integration + spring-integration-jdbc + 5.5.7 + + + org.springframework.integration + spring-integration-jms + 5.5.7 + + + org.springframework.integration + spring-integration-jmx + 5.5.7 + + + org.springframework.integration + spring-integration-jpa + 5.5.7 + + + org.springframework.integration + spring-integration-kafka + 5.5.7 + + + org.springframework.integration + spring-integration-mail + 5.5.7 + + + org.springframework.integration + spring-integration-mongodb + 5.5.7 + + + org.springframework.integration + spring-integration-mqtt + 5.5.7 + + + org.springframework.integration + spring-integration-r2dbc + 5.5.7 + + + org.springframework.integration + spring-integration-redis + 5.5.7 + + + org.springframework.integration + spring-integration-rmi + 5.5.7 + + + org.springframework.integration + spring-integration-rsocket + 5.5.7 + + + org.springframework.integration + spring-integration-scripting + 5.5.7 + + + org.springframework.integration + spring-integration-security + 5.5.7 + + + org.springframework.integration + spring-integration-sftp + 5.5.7 + + + org.springframework.integration + spring-integration-stomp + 5.5.7 + + + org.springframework.integration + spring-integration-stream + 5.5.7 + + + org.springframework.integration + spring-integration-syslog + 5.5.7 + + + org.springframework.integration + spring-integration-test + 5.5.7 + + + org.springframework.integration + spring-integration-test-support + 5.5.7 + + + org.springframework.integration + spring-integration-webflux + 5.5.7 + + + org.springframework.integration + spring-integration-websocket + 5.5.7 + + + org.springframework.integration + spring-integration-ws + 5.5.7 + + + org.springframework.integration + spring-integration-xml + 5.5.7 + + + org.springframework.integration + spring-integration-xmpp + 5.5.7 + + + org.springframework.integration + spring-integration-zeromq + 5.5.7 + + + org.springframework.integration + spring-integration-zookeeper + 5.5.7 + + + org.springframework.security + spring-security-acl + 5.6.1 + + + org.springframework.security + spring-security-aspects + 5.6.1 + + + org.springframework.security + spring-security-cas + 5.6.1 + + + org.springframework.security + spring-security-config + 5.6.1 + + + org.springframework.security + spring-security-core + 5.6.1 + + + org.springframework.security + spring-security-crypto + 5.6.1 + + + org.springframework.security + spring-security-data + 5.6.1 + + + org.springframework.security + spring-security-ldap + 5.6.1 + + + org.springframework.security + spring-security-messaging + 5.6.1 + + + org.springframework.security + spring-security-oauth2-client + 5.6.1 + + + org.springframework.security + spring-security-oauth2-core + 5.6.1 + + + org.springframework.security + spring-security-oauth2-jose + 5.6.1 + + + org.springframework.security + spring-security-oauth2-resource-server + 5.6.1 + + + org.springframework.security + spring-security-openid + 5.6.1 + + + org.springframework.security + spring-security-remoting + 5.6.1 + + + org.springframework.security + spring-security-rsocket + 5.6.1 + + + org.springframework.security + spring-security-saml2-service-provider + 5.6.1 + + + org.springframework.security + spring-security-taglibs + 5.6.1 + + + org.springframework.security + spring-security-test + 5.6.1 + + + org.springframework.security + spring-security-web + 5.6.1 + + + org.springframework.session + spring-session-jdbc + 2.6.1 + + + org.springframework.session + spring-session-data-geode + 2.6.0 + + + org.springframework.session + spring-session-hazelcast + 2.6.1 + + + org.springframework.session + spring-session-data-mongodb + 2.6.1 + + + org.springframework.session + spring-session-core + 2.6.1 + + + org.springframework.session + spring-session-data-redis + 2.6.1 + + + + + + org.springframework.boot + spring-boot-starter + 2.6.2 + provided + + + org.springframework.boot + spring-boot-starter-web + 2.6.2 + provided + + + com.alibaba + fastjson + 1.2.83 + compile + + + org.springframework.boot + spring-boot-starter-test + 2.6.2 + test + + + cn.dev33 + sa-token-spring-boot-starter + 1.31.0 + compile + + + + + + false + + central + Central Repository + https://repo.maven.apache.org/maven2 + + + + + + never + + + false + + central + Central Repository + https://repo.maven.apache.org/maven2 + + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/src/main/java + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/src/main/scripts + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/src/test/java + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/classes + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/test-classes + + + true + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/src/main/resources + + **/* + + + + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/src/test/resources + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target + language-all-0.0.1-SNAPSHOT + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.2.0 + + + org.flywaydb + flyway-maven-plugin + 8.0.5 + + + pl.project13.maven + git-commit-id-plugin + 4.9.10 + + + + revision + + + true + yyyy-MM-dd'T'HH:mm:ssZ + true + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/classes/git.properties + + + + + true + yyyy-MM-dd'T'HH:mm:ssZ + true + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/classes/git.properties + + + + org.apache.johnzon + johnzon-maven-plugin + 1.2.15 + + + org.jooq + jooq-codegen-maven + 3.14.15 + + + org.jetbrains.kotlin + kotlin-maven-plugin + 1.6.10 + + + compile + compile + + compile + + + 8 + true + + + + test-compile + test-compile + + test-compile + + + 8 + true + + + + + 8 + true + + + + org.liquibase + liquibase-maven-plugin + 4.5.0 + + + maven-antrun-plugin + 3.0.0 + + + maven-assembly-plugin + 3.3.0 + + + maven-clean-plugin + 3.1.0 + + + maven-compiler-plugin + 3.8.1 + + true + + + + maven-dependency-plugin + 3.2.0 + + + maven-release-plugin + 2.5.3 + + + maven-deploy-plugin + 2.8.2 + + + maven-enforcer-plugin + 3.0.0 + + + maven-failsafe-plugin + 2.22.2 + + + + integration-test + verify + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/classes + + + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/classes + + + + maven-help-plugin + 3.2.0 + + + maven-install-plugin + 2.5.2 + + + maven-invoker-plugin + 3.2.2 + + + maven-jar-plugin + 3.2.0 + + + + ${start-class} + true + + + + + + maven-javadoc-plugin + 3.3.1 + + + maven-resources-plugin + 3.2.0 + + UTF-8 + + @ + + false + + + + maven-shade-plugin + 3.2.4 + + + package + + shade + + + + + META-INF/spring.handlers + + + META-INF/spring.factories + + + META-INF/spring.schemas + + + + ${start-class} + + + true + true + + + *:* + + META-INF/*.SF + META-INF/*.DSA + META-INF/*.RSA + + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.6.2 + + + + true + true + + + *:* + + META-INF/*.SF + META-INF/*.DSA + META-INF/*.RSA + + + + + + + maven-source-plugin + 3.2.1 + + + maven-surefire-plugin + 2.22.2 + + + maven-war-plugin + 3.3.2 + + + + ${start-class} + true + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.6.2 + + + repackage + + repackage + + + ${start-class} + + + + + ${start-class} + + + + org.codehaus.mojo + versions-maven-plugin + 2.8.1 + + + org.codehaus.mojo + xml-maven-plugin + 1.0.2 + + + + + + maven-compiler-plugin + 3.11.0 + + + default-compile + compile + + compile + + + 8 + 8 + UTF-8 + true + + + + default-testCompile + test-compile + + testCompile + + + 8 + 8 + UTF-8 + true + + + + + 8 + 8 + UTF-8 + true + + + + maven-jar-plugin + 3.2.0 + + + default-jar + package + + jar + + + + org/nl/** + application.properties + language.i18n + **/*.i18n + + + + ${start-class} + true + + + + + + + + org/nl/** + application.properties + language.i18n + **/*.i18n + + + + ${start-class} + true + + + + + + maven-clean-plugin + 3.1.0 + + + default-clean + clean + + clean + + + + + + maven-resources-plugin + 3.2.0 + + + default-testResources + process-test-resources + + testResources + + + UTF-8 + + @ + + false + + + + default-resources + process-resources + + resources + + + UTF-8 + + @ + + false + + + + + UTF-8 + + @ + + false + + + + maven-surefire-plugin + 2.22.2 + + + default-test + test + + test + + + + + + maven-install-plugin + 2.5.2 + + + default-install + install + + install + + + + + + maven-deploy-plugin + 2.8.2 + + + default-deploy + deploy + + deploy + + + + + + maven-site-plugin + 3.3 + + + default-site + site + + site + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/site + + + org.apache.maven.plugins + maven-project-info-reports-plugin + + + + + + default-deploy + site-deploy + + deploy + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/site + + + org.apache.maven.plugins + maven-project-info-reports-plugin + + + + + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/site + + + org.apache.maven.plugins + maven-project-info-reports-plugin + + + + + + + + /Users/mima0000/NL_Pro/SDK 09.35.26/sdk/language/target/site + + + + +[INFO] ------------------------------------------------------------------------ +[INFO] BUILD SUCCESS +[INFO] ------------------------------------------------------------------------ +[INFO] Total time: 2.605 s +[INFO] Finished at: 2025-10-28T16:40:21+08:00 +[INFO] ------------------------------------------------------------------------ diff --git a/language/mvnw b/language/mvnw new file mode 100755 index 0000000..bd8896b --- /dev/null +++ b/language/mvnw @@ -0,0 +1,295 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.4 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +scriptDir="$(dirname "$0")" +scriptName="$(basename "$0")" + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"$scriptDir/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${scriptName#mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c - >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +actualDistributionDir="" + +# First try the expected directory name (for regular distributions) +if [ -d "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" ]; then + if [ -f "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/bin/$MVN_CMD" ]; then + actualDistributionDir="$distributionUrlNameMain" + fi +fi + +# If not found, search for any directory with the Maven executable (for snapshots) +if [ -z "$actualDistributionDir" ]; then + # enable globbing to iterate over items + set +f + for dir in "$TMP_DOWNLOAD_DIR"/*; do + if [ -d "$dir" ]; then + if [ -f "$dir/bin/$MVN_CMD" ]; then + actualDistributionDir="$(basename "$dir")" + break + fi + fi + done + set -f +fi + +if [ -z "$actualDistributionDir" ]; then + verbose "Contents of $TMP_DOWNLOAD_DIR:" + verbose "$(ls -la "$TMP_DOWNLOAD_DIR")" + die "Could not find Maven distribution directory in extracted archive" +fi + +verbose "Found extracted Maven distribution directory: $actualDistributionDir" +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$actualDistributionDir/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$actualDistributionDir" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/language/mvnw.cmd b/language/mvnw.cmd new file mode 100644 index 0000000..92450f9 --- /dev/null +++ b/language/mvnw.cmd @@ -0,0 +1,189 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.4 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" ("%__MVNW_CMD__%" %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND -eq $False) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace "^.*$MVNW_REPO_PATTERN",'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' + +$MAVEN_M2_PATH = "$HOME/.m2" +if ($env:MAVEN_USER_HOME) { + $MAVEN_M2_PATH = "$env:MAVEN_USER_HOME" +} + +if (-not (Test-Path -Path $MAVEN_M2_PATH)) { + New-Item -Path $MAVEN_M2_PATH -ItemType Directory | Out-Null +} + +$MAVEN_WRAPPER_DISTS = $null +if ((Get-Item $MAVEN_M2_PATH).Target[0] -eq $null) { + $MAVEN_WRAPPER_DISTS = "$MAVEN_M2_PATH/wrapper/dists" +} else { + $MAVEN_WRAPPER_DISTS = (Get-Item $MAVEN_M2_PATH).Target[0] + "/wrapper/dists" +} + +$MAVEN_HOME_PARENT = "$MAVEN_WRAPPER_DISTS/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.SHA256]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +$actualDistributionDir = "" + +# First try the expected directory name (for regular distributions) +$expectedPath = Join-Path "$TMP_DOWNLOAD_DIR" "$distributionUrlNameMain" +$expectedMvnPath = Join-Path "$expectedPath" "bin/$MVN_CMD" +if ((Test-Path -Path $expectedPath -PathType Container) -and (Test-Path -Path $expectedMvnPath -PathType Leaf)) { + $actualDistributionDir = $distributionUrlNameMain +} + +# If not found, search for any directory with the Maven executable (for snapshots) +if (!$actualDistributionDir) { + Get-ChildItem -Path "$TMP_DOWNLOAD_DIR" -Directory | ForEach-Object { + $testPath = Join-Path $_.FullName "bin/$MVN_CMD" + if (Test-Path -Path $testPath -PathType Leaf) { + $actualDistributionDir = $_.Name + } + } +} + +if (!$actualDistributionDir) { + Write-Error "Could not find Maven distribution directory in extracted archive" +} + +Write-Verbose "Found extracted Maven distribution directory: $actualDistributionDir" +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$actualDistributionDir" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/language/pom.xml b/language/pom.xml new file mode 100644 index 0000000..d542bf0 --- /dev/null +++ b/language/pom.xml @@ -0,0 +1,96 @@ + + + 4.0.0 + + nl.sdk + sdk-all + 0.0.1-SNAPSHOT + + nl.sdk + language + 0.0.1-SNAPSHOT + language + language SDK + jar + + + 8 + 8 + 8 + 1.2.83 + + + + + + org.springframework.boot + spring-boot-starter + provided + + + org.springframework.boot + spring-boot-starter-web + provided + + + + + com.alibaba + fastjson + ${fastjson.version} + compile + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + true + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.11.0 + + ${java.version} + ${java.version} + UTF-8 + + + + org.apache.maven.plugins + maven-jar-plugin + + + org/nl/** + application.properties + language.i18n + **/*.i18n + + + + + + + + src/main/resources + + **/* + + true + + + + diff --git a/language/src/main/java/org/nl/LanguageApplication.java b/language/src/main/java/org/nl/LanguageApplication.java new file mode 100644 index 0000000..5488915 --- /dev/null +++ b/language/src/main/java/org/nl/LanguageApplication.java @@ -0,0 +1,11 @@ +package org.nl; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class LanguageApplication { + public static void main(String[] args) { + SpringApplication.run(LanguageApplication.class, args); + } +} diff --git a/language/src/main/java/org/nl/common/BadLanguageException.java b/language/src/main/java/org/nl/common/BadLanguageException.java new file mode 100644 index 0000000..ca1c483 --- /dev/null +++ b/language/src/main/java/org/nl/common/BadLanguageException.java @@ -0,0 +1,47 @@ +/* + * Copyright 2019-2020 Zheng Jie + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.nl.common; + +import org.springframework.http.HttpStatus; + +import static org.springframework.http.HttpStatus.BAD_REQUEST; + +/** + * @author Zheng Jie + * @date 2018-11-23 + * 统一异常处理 + */ +public class BadLanguageException extends RuntimeException{ + + private Integer status = BAD_REQUEST.value(); + + public BadLanguageException(String msg){ + super(msg); + } + + public BadLanguageException(HttpStatus status, String msg){ + super(msg); + this.status = status.value(); + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } +} diff --git a/language/src/main/java/org/nl/common/DataCanvers.java b/language/src/main/java/org/nl/common/DataCanvers.java new file mode 100644 index 0000000..7acbe52 --- /dev/null +++ b/language/src/main/java/org/nl/common/DataCanvers.java @@ -0,0 +1,113 @@ +package org.nl.common; + + +import java.io.Serializable; +import java.util.List; + +/** + * 表格分页数据对象 + * + * @author Lion Li + */ + +public class DataCanvers implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 总记录数 + */ + private long totalElements; + + /** + * 列表数据 + */ + private Object content; + + /** + * 消息状态码 + */ + private String code; + + /** + * 消息内容 + */ + private String msg; + /** + * 分页 + * + * @param list 列表数据 + * @param total 总记录数 + */ + public DataCanvers(List list, long total) { + this.content = list; + this.totalElements = total; + } + + + public static DataCanvers buildList(List list) { + DataCanvers rspData = new DataCanvers<>(); + rspData.setCode(String.valueOf(HttpStatus.OK.value())); + rspData.setMsg("查询成功"); + rspData.setContent(list); + rspData.setTotalElements(list.size()); + return rspData; + } + + public static DataCanvers build() { + DataCanvers rspData = new DataCanvers<>(); + rspData.setCode(String.valueOf(HttpStatus.OK.value())); + rspData.setMsg("查询成功"); + return rspData; + } + + public static DataCanvers buildJson(Object result) { + DataCanvers rspData = new DataCanvers<>(); + rspData.setCode(String.valueOf(HttpStatus.OK.value())); + rspData.setContent(result); + rspData.setMsg("操作成功"); + return rspData; + } + + public long getTotalElements() { + return totalElements; + } + + public void setTotalElements(long totalElements) { + this.totalElements = totalElements; + } + + public Object getContent() { + return content; + } + + public void setContent(Object content) { + this.content = content; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public DataCanvers() { + this.totalElements = totalElements; + } + + public DataCanvers(long totalElements, Object content, String code, String msg) { + this.totalElements = totalElements; + this.content = content; + this.code = code; + this.msg = msg; + } +} diff --git a/language/src/main/java/org/nl/common/HttpStatus.java b/language/src/main/java/org/nl/common/HttpStatus.java new file mode 100644 index 0000000..99c27e9 --- /dev/null +++ b/language/src/main/java/org/nl/common/HttpStatus.java @@ -0,0 +1,139 @@ +package org.nl.common; + +public enum HttpStatus { + CONTINUE(100, org.springframework.http.HttpStatus.Series.INFORMATIONAL, "Continue"), + SWITCHING_PROTOCOLS(101, org.springframework.http.HttpStatus.Series.INFORMATIONAL, "Switching Protocols"), + PROCESSING(102, org.springframework.http.HttpStatus.Series.INFORMATIONAL, "Processing"), + CHECKPOINT(103, org.springframework.http.HttpStatus.Series.INFORMATIONAL, "Checkpoint"), + OK(200, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "OK"), + CREATED(201, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "Created"), + ACCEPTED(202, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "Accepted"), + NON_AUTHORITATIVE_INFORMATION(203, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "Non-Authoritative Information"), + NO_CONTENT(204, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "No Content"), + RESET_CONTENT(205, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "Reset Content"), + PARTIAL_CONTENT(206, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "Partial Content"), + MULTI_STATUS(207, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "Multi-Status"), + ALREADY_REPORTED(208, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "Already Reported"), + IM_USED(226, org.springframework.http.HttpStatus.Series.SUCCESSFUL, "IM Used"), + MULTIPLE_CHOICES(300, org.springframework.http.HttpStatus.Series.REDIRECTION, "Multiple Choices"), + MOVED_PERMANENTLY(301, org.springframework.http.HttpStatus.Series.REDIRECTION, "Moved Permanently"), + FOUND(302, org.springframework.http.HttpStatus.Series.REDIRECTION, "Found"), + /** @deprecated */ + @Deprecated + MOVED_TEMPORARILY(302, org.springframework.http.HttpStatus.Series.REDIRECTION, "Moved Temporarily"), + SEE_OTHER(303, org.springframework.http.HttpStatus.Series.REDIRECTION, "See Other"), + NOT_MODIFIED(304, org.springframework.http.HttpStatus.Series.REDIRECTION, "Not Modified"), + /** @deprecated */ + @Deprecated + USE_PROXY(305, org.springframework.http.HttpStatus.Series.REDIRECTION, "Use Proxy"), + TEMPORARY_REDIRECT(307, org.springframework.http.HttpStatus.Series.REDIRECTION, "Temporary Redirect"), + PERMANENT_REDIRECT(308, org.springframework.http.HttpStatus.Series.REDIRECTION, "Permanent Redirect"), + BAD_REQUEST(400, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Bad Request"), + UNAUTHORIZED(401, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Unauthorized"), + PAYMENT_REQUIRED(402, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Payment Required"), + FORBIDDEN(403, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Forbidden"), + NOT_FOUND(404, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Not Found"), + METHOD_NOT_ALLOWED(405, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Method Not Allowed"), + NOT_ACCEPTABLE(406, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Not Acceptable"), + PROXY_AUTHENTICATION_REQUIRED(407, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Proxy Authentication Required"), + REQUEST_TIMEOUT(408, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Request Timeout"), + CONFLICT(409, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Conflict"), + GONE(410, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Gone"), + LENGTH_REQUIRED(411, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Length Required"), + PRECONDITION_FAILED(412, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Precondition Failed"), + PAYLOAD_TOO_LARGE(413, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Payload Too Large"), + /** @deprecated */ + @Deprecated + REQUEST_ENTITY_TOO_LARGE(413, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Request Entity Too Large"), + URI_TOO_LONG(414, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "URI Too Long"), + /** @deprecated */ + @Deprecated + REQUEST_URI_TOO_LONG(414, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Request-URI Too Long"), + UNSUPPORTED_MEDIA_TYPE(415, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Unsupported Media Type"), + REQUESTED_RANGE_NOT_SATISFIABLE(416, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Requested range not satisfiable"), + EXPECTATION_FAILED(417, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Expectation Failed"), + I_AM_A_TEAPOT(418, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "I'm a teapot"), + /** @deprecated */ + @Deprecated + INSUFFICIENT_SPACE_ON_RESOURCE(419, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Insufficient Space On Resource"), + /** @deprecated */ + @Deprecated + METHOD_FAILURE(420, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Method Failure"), + /** @deprecated */ + @Deprecated + DESTINATION_LOCKED(421, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Destination Locked"), + UNPROCESSABLE_ENTITY(422, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Unprocessable Entity"), + LOCKED(423, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Locked"), + FAILED_DEPENDENCY(424, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Failed Dependency"), + TOO_EARLY(425, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Too Early"), + UPGRADE_REQUIRED(426, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Upgrade Required"), + PRECONDITION_REQUIRED(428, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Precondition Required"), + TOO_MANY_REQUESTS(429, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Too Many Requests"), + REQUEST_HEADER_FIELDS_TOO_LARGE(431, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Request Header Fields Too Large"), + UNAVAILABLE_FOR_LEGAL_REASONS(451, org.springframework.http.HttpStatus.Series.CLIENT_ERROR, "Unavailable For Legal Reasons"), + INTERNAL_SERVER_ERROR(500, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Internal Server Error"), + NOT_IMPLEMENTED(501, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Not Implemented"), + BAD_GATEWAY(502, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Bad Gateway"), + SERVICE_UNAVAILABLE(503, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Service Unavailable"), + GATEWAY_TIMEOUT(504, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Gateway Timeout"), + HTTP_VERSION_NOT_SUPPORTED(505, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "HTTP Version not supported"), + VARIANT_ALSO_NEGOTIATES(506, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Variant Also Negotiates"), + INSUFFICIENT_STORAGE(507, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Insufficient Storage"), + LOOP_DETECTED(508, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Loop Detected"), + BANDWIDTH_LIMIT_EXCEEDED(509, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Bandwidth Limit Exceeded"), + NOT_EXTENDED(510, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Not Extended"), + NETWORK_AUTHENTICATION_REQUIRED(511, org.springframework.http.HttpStatus.Series.SERVER_ERROR, "Network Authentication Required"); + + private static final HttpStatus[] VALUES = values(); + private final int value; + private final org.springframework.http.HttpStatus.Series series; + private final String reasonPhrase; + + private HttpStatus(int value, org.springframework.http.HttpStatus.Series series, String reasonPhrase) { + this.value = value; + this.series = series; + this.reasonPhrase = reasonPhrase; + } + + public int value() { + return this.value; + } + + public org.springframework.http.HttpStatus.Series series() { + return this.series; + } + + public String getReasonPhrase() { + return this.reasonPhrase; + } + + public boolean is1xxInformational() { + return this.series() == org.springframework.http.HttpStatus.Series.INFORMATIONAL; + } + + public boolean is2xxSuccessful() { + return this.series() == org.springframework.http.HttpStatus.Series.SUCCESSFUL; + } + + public boolean is3xxRedirection() { + return this.series() == org.springframework.http.HttpStatus.Series.REDIRECTION; + } + + public boolean is4xxClientError() { + return this.series() == org.springframework.http.HttpStatus.Series.CLIENT_ERROR; + } + + public boolean is5xxServerError() { + return this.series() == org.springframework.http.HttpStatus.Series.SERVER_ERROR; + } + + public boolean isError() { + return this.is4xxClientError() || this.is5xxServerError(); + } + + public String toString() { + return this.value + " " + this.name(); + } + +} + diff --git a/language/src/main/java/org/nl/language/LangBehavior.java b/language/src/main/java/org/nl/language/LangBehavior.java new file mode 100644 index 0000000..26d18ff --- /dev/null +++ b/language/src/main/java/org/nl/language/LangBehavior.java @@ -0,0 +1,36 @@ +package org.nl.language; + + +import org.nl.language.engine.I18nManagerService; +import org.springframework.util.StringUtils; + +public class LangBehavior { + public static I18nManagerService i18nManagerService; + + /** + * 不带从参数 + * @param key:common.paramException + * @return + */ + public static String language(String key) { + if(StringUtils.isEmpty(key)){ + return ""; + } + return i18nManagerService.language(key); + } + + /** + * 带参数的解析 + * @param key:common.paramException + * @param arg: 替换语言输出中的占位符:数据异常,${0}信息不存在 + * @return + */ + public static String language(String key, String...arg) { + if(StringUtils.isEmpty(key)){ + return ""; + } + String language = i18nManagerService.language(key); + String format = String.format(language, arg); + return format; + } +} diff --git a/language/src/main/java/org/nl/language/controller/langController.java b/language/src/main/java/org/nl/language/controller/langController.java new file mode 100644 index 0000000..12402f9 --- /dev/null +++ b/language/src/main/java/org/nl/language/controller/langController.java @@ -0,0 +1,123 @@ +package org.nl.language.controller; + +import cn.dev33.satoken.annotation.SaIgnore; +import com.alibaba.fastjson.JSONObject; +import com.fasterxml.jackson.core.json.UTF8JsonGenerator; +import org.nl.language.engine.I18nManagerService; +import org.nl.common.BadLanguageException; +import org.nl.common.DataCanvers; +import org.nl.language.LangBehavior; +import org.nl.language.engine.dto.LanguageDto; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.io.Resource; +import org.springframework.core.io.UrlResource; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.*; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +@RestController +@RequestMapping("/api/language") +public class langController { + + @Autowired + private I18nManagerService i18nManagerService; + + /** + * 查询code对应结构 + * @param languageDto + * @return + */ + @PostMapping("/structure") + @SaIgnore + public ResponseEntity query(@RequestBody LanguageDto languageDto) { + JSONObject langJs = i18nManagerService.langCache.get(languageDto.getLanguage()); + if (langJs ==null){ + throw new BadLanguageException(LangBehavior.language("system.dataExceptionArg",languageDto.getLanguage())); + } + Set> entries = langJs.entrySet(); + Map map = new HashMap<>(); + for (Map.Entry entry : entries) { + String key = entry.getKey(); + Object value = entry.getValue(); + if (value instanceof String){ + if (key.equals(languageDto.getCode())){ + map.put(key,value); + } + } + if (value instanceof JSONObject){ + keyRecursion(languageDto.getCode(),(JSONObject) value,key,map); + } + } + return new ResponseEntity<>(DataCanvers.buildJson(map), HttpStatus.OK); + } + + private void keyRecursion(String target,JSONObject langJs,String pKey,Map keyRecursion){ + Set> entries = langJs.entrySet(); + for (Map.Entry entry : entries) { + String key = entry.getKey(); + Object value = entry.getValue(); + if (value instanceof String){ + if (key.equals(target)){ + keyRecursion.put(pKey+"."+entry.getKey(),value); + } + }else if (value instanceof JSONObject){ + keyRecursion(target,(JSONObject) value,pKey+"."+entry.getKey(),keyRecursion); + } + } + } + /** + * 查询语言列表 + * @return + */ + @GetMapping("/list") + @SaIgnore + public ResponseEntity query() { + Set langs = i18nManagerService.langCache.keySet(); + Map map = new HashMap<>(); + for (String lang : langs) { + JSONObject langJs = i18nManagerService.langCache.get(lang); + String language = langJs.getString("language"); + map.put(lang,language); + } + return new ResponseEntity<>(DataCanvers.buildJson(map), HttpStatus.OK); + } + + @RequestMapping(value = "/js/{filename}") + @SaIgnore + public ResponseEntity getFile(@PathVariable String filename) { + JSONObject langJs = i18nManagerService.langCache.get(filename); + return new ResponseEntity<>(DataCanvers.buildJson(langJs), HttpStatus.OK); + +// return loadJsFile(filename); + } + + private ResponseEntity loadJsFile(String filename) { + try { + String jsPath = i18nManagerService.filePaths.get(filename); + if (StringUtils.isEmpty(jsPath)){ + return ResponseEntity.badRequest().body("文件不存在"); + } + Resource resource = i18nManagerService.getResource(jsPath); + if (resource.exists() && resource.isReadable()) { + return ResponseEntity.ok() + //text/javascript + .header(HttpHeaders.CONTENT_TYPE, "application/javascript; charset=utf-8") + .body(resource); + } else { + return ResponseEntity.badRequest().body("文件不存在"); + } + } catch (Exception e) { + return ResponseEntity.badRequest().body(e.getMessage()); + } + } +} diff --git a/language/src/main/java/org/nl/language/engine/I18nManagerService.java b/language/src/main/java/org/nl/language/engine/I18nManagerService.java new file mode 100644 index 0000000..7d6ae2d --- /dev/null +++ b/language/src/main/java/org/nl/language/engine/I18nManagerService.java @@ -0,0 +1,107 @@ +package org.nl.language.engine; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import org.nl.language.LangBehavior; +import org.springframework.beans.factory.DisposableBean; +import org.springframework.beans.factory.InitializingBean; +import org.springframework.core.io.ClassPathResource; +import org.springframework.core.io.FileSystemResource; +import org.springframework.core.io.Resource; +import org.springframework.stereotype.Service; +import org.springframework.util.FileCopyUtils; +import org.springframework.util.StringUtils; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.ScheduledExecutorService; + +@Service +public class I18nManagerService implements InitializingBean, DisposableBean { + private final I18nProperties properties; + public final Map langCache = new HashMap<>(); + public final Map filePaths = new HashMap<>(); + private ScheduledExecutorService scheduler; + + + public I18nManagerService(I18nProperties properties) { + System.out.println("I18nManagerService开始加载"+properties.toString()); + this.properties = properties; + } + + @Override + public void afterPropertiesSet() throws Exception { + // 加载所有语言文件 + for (String lang : properties.getSupportedLanguages()) { + loadLangFile(lang); + } + LangBehavior.i18nManagerService = this; + } + // 以下为原有方法(保持不变) + private void loadLangFile(String lang) throws IOException { + String fileName = lang + ".js"; + String fullPath = properties.getLocation() + fileName; + Resource resource = getResource(fullPath); + if (!resource.exists() && properties.isFallbackToClasspath()) { + resource = new ClassPathResource("language/i18n/" + fileName); + fullPath = "classpath:language/i18n/" + fileName; + System.out.println("文件名"+resource.getFilename()); + } + if (!resource.exists()) { + throw new IOException("Language file not found: " + fullPath); + } else { + InputStream inputStream = resource.getInputStream(); + byte[] bytes = FileCopyUtils.copyToByteArray(inputStream); + String content = new String(bytes, StandardCharsets.UTF_8); + String jsonStr = content.replace("var config = ", "").trim(); + JSONObject config = JSON.parseObject(jsonStr); + this.langCache.put(lang, config); + this.filePaths.put(lang, fullPath); + inputStream.close(); + } + } + + public Resource getResource(String path) { + System.out.println("文件加载路径"+path); + if (path.startsWith("file:")) { + return new FileSystemResource(path.substring("file:".length())); + } else if (path.startsWith("classpath:")) { + return new ClassPathResource(path.substring("classpath:".length())); + } else { + return new FileSystemResource(path); + } + } + + + public String language(String key) { + String lang = LangContextHolder.getLangOrDefault(); + JSONObject config = langCache.get(lang); + if (config == null) { + return ""; + } + String[] keyParts = key.split("\\."); + JSONObject current = config; + for (int i = 0; i < keyParts.length; i++) { + if (i == keyParts.length - 1) { + return StringUtils.isEmpty(current.getString(keyParts[i])) ? key : current.getString(keyParts[i]); + } + current = current.getJSONObject(keyParts[i]); + if (current == null) { + return key; + } + } + return key; + } + + @Override + public void destroy() { + if (scheduler != null) { + scheduler.shutdown(); + } + langCache.clear(); + filePaths.clear(); + } +} diff --git a/language/src/main/java/org/nl/language/engine/I18nProperties.java b/language/src/main/java/org/nl/language/engine/I18nProperties.java new file mode 100644 index 0000000..e8f367e --- /dev/null +++ b/language/src/main/java/org/nl/language/engine/I18nProperties.java @@ -0,0 +1,62 @@ +package org.nl.language.engine; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +import java.util.List; + +@Configuration +@ConfigurationProperties(prefix = "i18n") +public class I18nProperties { + // 语言文件存放路径,可以是外部路径或classpath + private String location = "C:\\i18n\\"; + // 热更新检查间隔(秒) + private long refreshInterval = 60; + // 支持的语言列表 + private List supportedLanguages; + // 当外部文件不存在时,是否回退到classpath中的默认文件 + private boolean fallbackToClasspath = true; + + // getter和setter方法 + public String getLocation() { + return location; + } + + public void setLocation(String location) { + this.location = location; + } + + public long getRefreshInterval() { + return refreshInterval; + } + + public void setRefreshInterval(long refreshInterval) { + this.refreshInterval = refreshInterval; + } + + public List getSupportedLanguages() { + return supportedLanguages; + } + + public void setSupportedLanguages(List supportedLanguages) { + this.supportedLanguages = supportedLanguages; + } + + public boolean isFallbackToClasspath() { + return fallbackToClasspath; + } + + public void setFallbackToClasspath(boolean fallbackToClasspath) { + this.fallbackToClasspath = fallbackToClasspath; + } + + @Override + public String toString() { + return "I18nProperties{" + + "location='" + location + '\'' + + ", refreshInterval=" + refreshInterval + + ", supportedLanguages=" + supportedLanguages + + ", fallbackToClasspath=" + fallbackToClasspath + + '}'; + } +} diff --git a/language/src/main/java/org/nl/language/engine/LangContextHolder.java b/language/src/main/java/org/nl/language/engine/LangContextHolder.java new file mode 100644 index 0000000..c30b582 --- /dev/null +++ b/language/src/main/java/org/nl/language/engine/LangContextHolder.java @@ -0,0 +1,31 @@ +package org.nl.language.engine; + +import org.springframework.util.StringUtils; + +public class LangContextHolder { + // 线程本地变量,存储当前线程的语言标识 + private static final ThreadLocal LANG_HOLDER = new ThreadLocal<>(); + + // 设置当前线程的语言 + public static void setLang(String lang) { + LANG_HOLDER.set(lang); + } + + // 默认语言(从配置中获取) + public static String defaultLang = "zh"; + // 获取当前线程的语言 + public static String getLang() { + return LANG_HOLDER.get(); + } + + // 清除当前线程的语言设置(防止内存泄漏) + public static void clear() { + LANG_HOLDER.remove(); + } + + // 获取当前语言,如果未设置则返回默认语言 + public static String getLangOrDefault() { + String lang = getLang(); + return StringUtils.hasText(lang) ? lang : defaultLang; + } +} diff --git a/language/src/main/java/org/nl/language/engine/LangInterceptor.java b/language/src/main/java/org/nl/language/engine/LangInterceptor.java new file mode 100644 index 0000000..3e61cf4 --- /dev/null +++ b/language/src/main/java/org/nl/language/engine/LangInterceptor.java @@ -0,0 +1,51 @@ +package org.nl.language.engine; + + +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.HandlerInterceptor; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@Component +public class LangInterceptor implements HandlerInterceptor { + + // 支持的语言列表(实际项目中可从配置获取) + private final I18nProperties properties; + + public LangInterceptor(I18nProperties properties) { + this.properties = properties; + } + + @Override + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) { + // 1. 从请求参数获取语言(如 ?lang=zh) + String lang = request.getParameter("lang"); + + // 2. 如果参数不存在,可从Header获取(如 Accept-Language) + if (lang == null || lang.isEmpty()) { + lang = request.getHeader("Accept-Language"); + // 简单处理,只取前两位(如 zh-CN -> zh) + if (lang != null && lang.length() >= 2) { + lang = lang.substring(0, 2); + } + } + + // 3. 验证语言是否在支持的列表中 + if (lang != null && properties.getSupportedLanguages().contains(lang)) { + LangContextHolder.setLang(lang); + } else { + // 不支持的语言使用默认语言 + LangContextHolder.setLang("zh"); + } + + return true; + } + + @Override + public void afterCompletion(HttpServletRequest request, HttpServletResponse response, + Object handler, Exception ex) { + // 清除线程变量,防止内存泄漏 + LangContextHolder.clear(); + } +} diff --git a/language/src/main/java/org/nl/language/engine/WebConfig.java b/language/src/main/java/org/nl/language/engine/WebConfig.java new file mode 100644 index 0000000..f341795 --- /dev/null +++ b/language/src/main/java/org/nl/language/engine/WebConfig.java @@ -0,0 +1,21 @@ +package org.nl.language.engine; + +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@Configuration +public class WebConfig implements WebMvcConfigurer { + + private final LangInterceptor langInterceptor; + + public WebConfig(LangInterceptor langInterceptor) { + this.langInterceptor = langInterceptor; + } + + @Override + public void addInterceptors(InterceptorRegistry registry) { + // 对所有请求生效 + registry.addInterceptor(langInterceptor).addPathPatterns("/**"); + } +} diff --git a/language/src/main/java/org/nl/language/engine/dto/LanguageDto.java b/language/src/main/java/org/nl/language/engine/dto/LanguageDto.java new file mode 100644 index 0000000..df9b2a0 --- /dev/null +++ b/language/src/main/java/org/nl/language/engine/dto/LanguageDto.java @@ -0,0 +1,24 @@ +package org.nl.language.engine.dto; + + +public class LanguageDto { + + private String code; + private String language; + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getLanguage() { + return language; + } + + public void setLanguage(String language) { + this.language = language; + } +} diff --git a/language/src/main/resources/application.properties b/language/src/main/resources/application.properties new file mode 100644 index 0000000..43e78b3 --- /dev/null +++ b/language/src/main/resources/application.properties @@ -0,0 +1,6 @@ +spring.application.name=language +server.port=8081 +i18n.location=file:F:/i18n +i18n.supported-languages=zh,en,vi,jp +i18n.fallback-to-classpath=true +fallback-to-classpath: true diff --git a/language/src/main/resources/language/i18n/en.js b/language/src/main/resources/language/i18n/en.js new file mode 100644 index 0000000..22cb07e --- /dev/null +++ b/language/src/main/resources/language/i18n/en.js @@ -0,0 +1,133 @@ +var config = { + 'lang': 'zh', + 'platform': { + 'title': 'Fujia WMS', + 'tip1': 'Username cannot be empty', + 'tip2': 'Password cannot be empty', + 'tip3': 'Verification code cannot be empty' + }, + 'common': { + 'home': 'Home', + 'Layout_setting': 'Layout Settings', + 'Personal_center': 'Personal Center', + 'Log_out': 'Log Out', + 'Personal_information': 'Personal Information', + 'username': 'Username', + 'name': 'Name', + 'phone': 'Mobile Number', + 'phone2': 'Phone Number', + 'sex': 'Gender', + 'sex_male': 'Male', + 'sex_female': 'Female', + 'email': 'Email', + 'Security_settings': 'Security Settings', + 'Save_settings': 'Save Settings', + 'Reset_settings': 'Reset Settings', + 'Change_password': 'Change Password', + 'New_password': 'New Password', + 'Old_password': 'Old Password', + 'Verify_password': 'Confirm Password', + 'User_information': 'User Profile', + 'Operation_log': 'Operation Log', + 'action': 'Action', + 'IP_source': 'IP Source', + 'Browser': 'Browser', + 'Request_time': 'Request Time', + 'Creation_date': 'Creation Date', + 'account': 'Account', + 'password': 'Password', + 'verification_code': 'Verification Code', + 'login_rm': 'Remember Me', + 'login': 'Login', + 'login_ing': 'Logging in...', + 'Create': 'Add', + 'Update': 'Edit', + 'Delete': 'Delete', + 'More': 'More', + 'Export': 'Export', + 'Editors': 'Edit', + 'SelectAll': 'Select All', + 'Query': 'Query', + 'Reset': 'Reset', + 'Confirm': 'Confirm', + 'Cancel': 'Cancel', + 'Yes': 'Yes', + 'No': 'No', + 'Success': 'Success', + 'Fail': 'Fail', + 'Please_select': 'Please Select', + 'Operation_success': 'Operation Successful', + 'Upload_success': 'Upload Successful', + 'Operate': 'Operation', + 'Refresh': 'Refresh', + 'Closes': 'Close', + 'Closes_l': 'Close Left', + 'Closes_r': 'Close Right', + 'Closes_o': 'Close Others', + 'Closes_a': 'Close All', + 'Theme_style_setting': 'Theme Style Settings', + 'Theme_color': 'Theme Color', + 'System_layout_configuration': 'System Layout Configuration', + 'Open': 'Open', + 'Fixation': 'Fixed', + 'Display': 'Display', + 'Dynamic_titles': 'Dynamic Titles', + 'crudTip': 'Are you sure you want to delete this data?', + 'startDate': 'Start Date', + 'endDate': 'End Date', + 'moreMenu': 'More Menu', + 'browses': 'Browse', + 'fz': 'Full Screen Zoom', + 'submit': 'Submitted Successfully', + 'add': 'Added Successfully', + 'edit': 'Edited Successfully', + 'del': 'Deleted Successfully', + 'close': 'Confirm Close', + 'save': 'Saved Successfully', + 'datas': 'Data', + 'Tips': 'Tips', + 'Tip1': 'Confirm deletion of selected {count} data entries?', + 'Tip3': 'Username is not used for login', + 'Tip4': 'Mobile number cannot be duplicated', + 'Tip5': 'Please enter phone number', + 'Tip6': 'Please enter a valid 11-digit mobile number', + 'Tip7': 'Drag excel file here or', + 'Tip8': 'The two passwords entered do not match', + 'Tip9': 'Please enter password again', + 'Tip10': 'Please enter old password', + 'Tip11': 'Please enter new password', + 'Tip12': 'Length should be between {min} and {max} characters', + 'Tip13': 'Are you sure to log out and exit the system?', + 'Tip14': 'WebSocket connection error occurred', + 'Tip15': 'Please enter icon name', + 'Tip16': 'Cannot be empty', + 'Tip17': 'Please enter what you want to search for', + 'loading': 'Data loading...', + 'Tip18': 'Select date and time', + 'Tip19': 'Are you sure you want to delete the selected data?', + 'Tip20': 'Current login status has expired, please log in again!' + }, + 'WorkOrder': { + 'form': { + 'WorkOrderCode': 'Work Order Code' + }, + 'placeholder': { + 'WorkOrderCode': 'Please enter work order code' + } + }, + 'monitor': { + 'sys': 'System', + 'day': 'Project has been running continuously for', + 'status': 'Status', + 'cpu': 'CPU Usage', + 'core': 'Core', + 'memory': 'Memory Usage', + 'tality': 'Total', + 'used': 'Used', + 'leisure': 'Free', + 'exchange': 'Swap Usage', + 'disk': 'Disk Usage', + 'cpu_monitoring': 'CPU Usage Monitoring', + 'memory_monitoring': 'Memory Usage Monitoring' + } +} diff --git a/language/src/main/resources/language/i18n/jp.js b/language/src/main/resources/language/i18n/jp.js new file mode 100644 index 0000000..ed3b03f --- /dev/null +++ b/language/src/main/resources/language/i18n/jp.js @@ -0,0 +1,133 @@ +var config = { + 'lang': 'zh', + 'platform': { + 'title': '富佳WMS', + 'tip1': 'ユーザー名は必須です', + 'tip2': 'パスワードは必須です', + 'tip3': '認証コードは必須です' + }, + 'common': { + 'home': 'ホーム', + 'Layout_setting': 'レイアウト設定', + 'Personal_center': '個人センター', + 'Log_out': 'ログアウト', + 'Personal_information': '個人情報', + 'username': 'ユーザー名', + 'name': '氏名', + 'phone': '携帯番号', + 'phone2': '電話番号', + 'sex': '性別', + 'sex_male': '男性', + 'sex_female': '女性', + 'email': 'メールアドレス', + 'Security_settings': 'セキュリティ設定', + 'Save_settings': '設定を保存', + 'Reset_settings': '設定をリセット', + 'Change_password': 'パスワード変更', + 'New_password': '新しいパスワード', + 'Old_password': '旧パスワード', + 'Verify_password': 'パスワード確認', + 'User_information': 'ユーザー情報', + 'Operation_log': '操作ログ', + 'action': '操作', + 'IP_source': 'IPソース', + 'Browser': 'ブラウザ', + 'Request_time': 'リクエスト時間', + 'Creation_date': '作成日', + 'account': 'アカウント', + 'password': 'パスワード', + 'verification_code': '認証コード', + 'login_rm': 'ログイン状態を保持', + 'login': 'ログイン', + 'login_ing': 'ログイン中...', + 'Create': '新規追加', + 'Update': '編集', + 'Delete': '削除', + 'More': '詳細', + 'Export': 'エクスポート', + 'Editors': '編集', + 'SelectAll': 'すべて選択', + 'Query': '検索', + 'Reset': 'リセット', + 'Confirm': '確認', + 'Cancel': 'キャンセル', + 'Yes': 'はい', + 'No': 'いいえ', + 'Success': '成功', + 'Fail': '失敗', + 'Please_select': '選択してください', + 'Operation_success': '操作成功', + 'Upload_success': 'アップロード成功', + 'Operate': '操作', + 'Refresh': '更新', + 'Closes': '閉じる', + 'Closes_l': '左を閉じる', + 'Closes_r': '右を閉じる', + 'Closes_o': '他を閉じる', + 'Closes_a': 'すべて閉じる', + 'Theme_style_setting': 'テーマスタイル設定', + 'Theme_color': 'テーマカラー', + 'System_layout_configuration': 'システムレイアウト設定', + 'Open': '开启', + 'Fixation': '固定', + 'Display': '表示', + 'Dynamic_titles': '动态标题', + 'crudTip': 'このデータを削除してもよろしいですか?', + 'startDate': '開始日', + 'endDate': '終了日', + 'moreMenu': '詳細メニュー', + 'browses': '閲覧', + 'fz': '全画面ズーム', + 'submit': '送信成功', + 'add': '追加成功', + 'edit': '編集成功', + 'del': '削除成功', + 'close': '閉じる確認', + 'save': '保存成功', + 'datas': 'データ', + 'Tips': 'ヒント', + 'Tip1': '選択した{count}件のデータを削除してもよろしいですか?', + 'Tip3': 'ユーザー名はログインに使用されません', + 'Tip4': '携帯番号は重複できません', + 'Tip5': '電話番号を入力してください', + 'Tip6': '正しい11桁の携帯番号を入力してください', + 'Tip7': 'Excelファイルをここにドラッグ または', + 'Tip8': '入力した2つのパスワードが一致しません', + 'Tip9': 'パスワードを再度入力してください', + 'Tip10': '旧パスワードを入力してください', + 'Tip11': '新しいパスワードを入力してください', + 'Tip12': '長さは{min}から{max}文字の間でなければなりません', + 'Tip13': 'ログアウトしてシステムを終了してもよろしいですか?', + 'Tip14': 'WebSocket接続でエラーが発生しました', + 'Tip15': 'アイコン名を入力してください', + 'Tip16': '必須項目です', + 'Tip17': '検索内容を入力してください', + 'loading': 'データ読み込み中...', + 'Tip18': '日時を選択', + 'Tip19': '選択したデータを削除してもよろしいですか?', + 'Tip20': '現在のログイン状態は期限切れです。再ログインしてください!' + }, + 'WorkOrder': { + 'form': { + 'WorkOrderCode': '作業指示コード' + }, + 'placeholder': { + 'WorkOrderCode': '作業指示コードを入力してください' + } + }, + 'monitor': { + 'sys': 'システム', + 'day': 'プロジェクトが連続運転中', + 'status': '状態', + 'cpu': 'CPU使用率', + 'core': 'コア', + 'memory': 'メモリ使用率', + 'tality': '合計', + 'used': '使用済み', + 'leisure': '空き', + 'exchange': 'スワップ使用率', + 'disk': 'ディスク使用率', + 'cpu_monitoring': 'CPU使用率モニタリング', + 'memory_monitoring': 'メモリ使用率モニタリング' + } +} diff --git a/language/src/main/resources/language/i18n/vi.js b/language/src/main/resources/language/i18n/vi.js new file mode 100644 index 0000000..cc40a49 --- /dev/null +++ b/language/src/main/resources/language/i18n/vi.js @@ -0,0 +1,133 @@ +var config = { + 'lang': 'zh', + 'platform': { + 'title': '富佳WMS', + 'tip1': '用户名不能为空', + 'tip2': '密码不能为空', + 'tip3': '验证码不能为空' +}, + 'common': { + 'home': '首页', // 首页 + 'Layout_setting': '布局设置', + 'Personal_center': '个人中心', + 'Log_out': '退出登录', + 'Personal_information': '个人信息', + 'username': '用户姓名', + 'name': '姓名', + 'phone': '手机号码', + 'phone2': '手机号', + 'sex': '性别', + 'sex_male': '男', + 'sex_female': '女', + 'email': '用户邮箱', + 'Security_settings': '安全设置', + 'Save_settings': '保存配置', + 'Reset_settings': '重置配置', + 'Change_password': '修改密码', + 'New_password': '新密码', + 'Old_password': '旧密码', + 'Verify_password': '确认密码', + 'User_information': '用户资料', + 'Operation_log': '操作日志', + 'action': '行为', + 'IP_source': 'IP来源', + 'Browser': '浏览器', + 'Request_time': '请求耗时', + 'Creation_date': '创建日期', + 'account': '账号', + 'password': '密码', + 'verification_code': '验证码', + 'login_rm': '记住我', + 'login': '登 录', + 'login_ing': '登 录 中...', + 'Create': '新增', + 'Update': '修改', + 'Delete': '删除', + 'More': '更多', + 'Export': '导出', + 'Editors': '编辑', + 'SelectAll': '全选', + 'Query': '查询', + 'Reset': '重置', + 'Confirm': '确认', + 'Cancel': '取消', + 'Yes': '是', + 'No': '否', + 'Success': '成功', + 'Fail': '失败', + 'Please_select': '请选择', + 'Operation_success': '操作成功', + 'Upload_success': '上传成功', + 'Operate': '操作', + 'Refresh': '刷新', + 'Closes': '关闭', + 'Closes_l': '关闭左侧', + 'Closes_r': '关闭右侧', + 'Closes_o': '关闭其他', + 'Closes_a': '关闭全部', + 'Theme_style_setting': '主题风格设置', + 'Theme_color': '主题颜色', + 'System_layout_configuration': '系统布局配置', + 'Open': '开启', + 'Fixation': '固定', + 'Display': '显示', + 'Dynamic_titles': '动态标题', + 'crudTip': '确定删除本条数据吗?', + 'startDate': '开始日期', + 'endDate': '结束日期', + 'moreMenu': '更多菜单', + 'browses': '浏览', + 'fz': '全屏缩放', + 'submit': '提交成功', + 'add': '新增成功', + 'edit': '编辑成功', + 'del': '删除成功', + 'close': '确认关闭', + 'save': '保存成功', + 'datas': '数据', + 'Tips': '提示', + 'Tip1': '确认删除选中的{count}条数据?', + 'Tip3': '用户姓名不作为登录使用', + 'Tip4': '手机号码不能重复', + 'Tip5': '请输入电话号码', + 'Tip6': '请输入正确的11位手机号码', + 'Tip7': '拖拽excel文件到此处 或者', + 'Tip8': '两次输入的密码不一致', + 'Tip9': '请再次输入密码', + 'Tip10': '请输入旧密码', + 'Tip11': '请输入新密码', + 'Tip12': '长度在 {min} 到 {max} 个字符', + 'Tip13': '确定注销并退出系统吗?', + 'Tip14': 'WebSocket连接发生错误', + 'Tip15': '请输入图标名称', + 'Tip16': '不能为空', + 'Tip17': '请输入你要搜索的内容', + 'loading': '数据加载中...', + 'Tip18': '选择日期时间', + 'Tip19': '你确定删除选中的数据吗?', + 'Tip20': '当前登录状态已过期,请重新登录!' +}, + 'WorkOrder': { + 'form': { + 'WorkOrderCode': '工单编码' + }, + 'placeholder': { + 'WorkOrderCode': '请输入工单编码' + } +}, + 'monitor': { + 'sys': '系统', + 'day': '项目已不间断运行', + 'status': '状态', + 'cpu': 'CPU使用率', + 'core': '核心', + 'memory': '内存使用率', + 'tality': '总量', + 'used': '已使用', + 'leisure': '空闲', + 'exchange': '交换区使用率', + 'disk': '磁盘使用率', + 'cpu_monitoring': 'CPU使用率监控', + 'memory_monitoring': '内存使用率监控' + } +} diff --git a/language/src/main/resources/language/i18n/zh.js b/language/src/main/resources/language/i18n/zh.js new file mode 100644 index 0000000..80a70a8 --- /dev/null +++ b/language/src/main/resources/language/i18n/zh.js @@ -0,0 +1,161 @@ +var config = { + 'lang': 'zh', + 'platform': { + 'title': '富佳WMS', + 'tip1': '用户名不能为空', + 'tip2': '密码不能为空', + 'tip3': '验证码不能为空' + }, + 'common': { + 'home': '首页', // 首页 + 'Layout_setting': '布局设置', + 'Personal_center': '个人中心', + 'Log_out': '退出登录', + 'Personal_information': '个人信息', + 'username': '用户姓名', + 'name': '姓名', + 'phone': '手机号码', + 'phone2': '手机号', + 'sex': '性别', + 'sex_male': '男', + 'sex_female': '女', + 'email': '用户邮箱', + 'Security_settings': '安全设置', + 'Save_settings': '保存配置', + 'Reset_settings': '重置配置', + 'Change_password': '修改密码', + 'New_password': '新密码', + 'Old_password': '旧密码', + 'Verify_password': '确认密码', + 'User_information': '用户资料', + 'Operation_log': '操作日志', + 'action': '行为', + 'IP_source': 'IP来源', + 'Browser': '浏览器', + 'Request_time': '请求耗时', + 'Creation_date': '创建日期', + 'account': '账号', + 'password': '密码', + 'verification_code': '验证码', + 'login_rm': '记住我', + 'login': '登 录', + 'login_ing': '登 录 中...', + 'Create': '新增', + 'Update': '修改', + 'Delete': '删除', + 'More': '更多', + 'Export': '导出', + 'Editors': '编辑', + 'SelectAll': '全选', + 'Query': '查询', + 'Reset': '重置', + 'Confirm': '确认', + 'Cancel': '取消', + 'Yes': '是', + 'No': '否', + 'Success': '成功', + 'Fail': '失败', + 'Please_select': '请选择', + 'Operation_success': '操作成功', + 'Upload_success': '上传成功', + 'Operate': '操作', + 'Refresh': '刷新', + 'Closes': '关闭', + 'Closes_l': '关闭左侧', + 'Closes_r': '关闭右侧', + 'Closes_o': '关闭其他', + 'Closes_a': '关闭全部', + 'Theme_style_setting': '主题风格设置', + 'Theme_color': '主题颜色', + 'System_layout_configuration': '系统布局配置', + 'Open': '开启', + 'Fixation': '固定', + 'Display': '显示', + 'Dynamic_titles': '动态标题', + 'crudTip': '确定删除本条数据吗?', + 'startDate': '开始日期', + 'endDate': '结束日期', + 'moreMenu': '更多菜单', + 'browses': '浏览', + 'fz': '全屏缩放', + 'submit': '提交成功', + 'add': '新增成功', + 'edit': '编辑成功', + 'del': '删除成功', + 'close': '确认关闭', + 'save': '保存成功', + 'datas': '数据', + 'Tips': '提示', + 'Tip1': '确认删除选中的{count}条数据?', + 'Tip3': '用户姓名不作为登录使用', + 'Tip4': '手机号码不能重复', + 'Tip5': '请输入电话号码', + 'Tip6': '请输入正确的11位手机号码', + 'Tip7': '拖拽excel文件到此处 或者', + 'Tip8': '两次输入的密码不一致', + 'Tip9': '请再次输入密码', + 'Tip10': '请输入旧密码', + 'Tip11': '请输入新密码', + 'Tip12': '长度在 {min} 到 {max} 个字符', + 'Tip13': '确定注销并退出系统吗?', + 'Tip14': 'WebSocket连接发生错误', + 'Tip15': '请输入图标名称', + 'Tip16': '不能为空', + 'Tip17': '请输入你要搜索的内容', + 'loading': '数据加载中...', + 'Tip18': '选择日期时间', + 'Tip19': '你确定删除选中的数据吗?', + 'Tip20': '当前登录状态已过期,请重新登录!' + }, + 'WorkOrder': { + 'form': { + 'WorkOrderCode': '工单编码' + }, + 'placeholder': { + 'WorkOrderCode': '请输入工单编码' + } + }, + 'monitor': { + 'sys': '系统', + 'day': '项目已不间断运行', + 'status': '状态', + 'cpu': 'CPU使用率', + 'core': '核心', + 'memory': '内存使用率', + 'tality': '总量', + 'used': '已使用', + 'leisure': '空闲', + 'exchange': '交换区使用率', + 'disk': '磁盘使用率', + 'cpu_monitoring': 'CPU使用率监控', + 'memory_monitoring': '内存使用率监控' + }, + "screen": { + "title":"仓储看板", + "pointUse":"货位使用", + "total_qty":"总数", + "use_qty":"使用数", + "emp_qty":"空货位", + "use_percentage":"货位百分比", + "ivtAnalyse":"实时库存分析", + "inAndOutTrend":"出入库趋势", + "in":"入库", + "out":"出库", + "toDayInAndOut":"今日出入库", + "realTask":"实时任务", + "task_code":"任务编码", + "point_code1":"起点", + "point_code2":"终点", + "vehicle_code":"载具编码", + "task_status":"任务状态", + "unIos":"未完成单据", + "bill_code":"单据编码", + "io_type":"出入库类型", + "bill_type":"单据类型", + "biz_date":"业务日期", + "stor_code":"仓库", + "detail_count":"明细数", + "source_id":"源单号", + "bill_status":"单据状态", + } +} diff --git a/language/src/main/归档.zip b/language/src/main/归档.zip new file mode 100644 index 0000000..4848989 Binary files /dev/null and b/language/src/main/归档.zip differ diff --git a/mvnw b/mvnw new file mode 100755 index 0000000..bd8896b --- /dev/null +++ b/mvnw @@ -0,0 +1,295 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.4 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +scriptDir="$(dirname "$0")" +scriptName="$(basename "$0")" + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"$scriptDir/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${scriptName#mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c - >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +actualDistributionDir="" + +# First try the expected directory name (for regular distributions) +if [ -d "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" ]; then + if [ -f "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/bin/$MVN_CMD" ]; then + actualDistributionDir="$distributionUrlNameMain" + fi +fi + +# If not found, search for any directory with the Maven executable (for snapshots) +if [ -z "$actualDistributionDir" ]; then + # enable globbing to iterate over items + set +f + for dir in "$TMP_DOWNLOAD_DIR"/*; do + if [ -d "$dir" ]; then + if [ -f "$dir/bin/$MVN_CMD" ]; then + actualDistributionDir="$(basename "$dir")" + break + fi + fi + done + set -f +fi + +if [ -z "$actualDistributionDir" ]; then + verbose "Contents of $TMP_DOWNLOAD_DIR:" + verbose "$(ls -la "$TMP_DOWNLOAD_DIR")" + die "Could not find Maven distribution directory in extracted archive" +fi + +verbose "Found extracted Maven distribution directory: $actualDistributionDir" +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$actualDistributionDir/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$actualDistributionDir" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/mvnw.cmd b/mvnw.cmd new file mode 100644 index 0000000..92450f9 --- /dev/null +++ b/mvnw.cmd @@ -0,0 +1,189 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.4 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" ("%__MVNW_CMD__%" %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND -eq $False) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace "^.*$MVNW_REPO_PATTERN",'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' + +$MAVEN_M2_PATH = "$HOME/.m2" +if ($env:MAVEN_USER_HOME) { + $MAVEN_M2_PATH = "$env:MAVEN_USER_HOME" +} + +if (-not (Test-Path -Path $MAVEN_M2_PATH)) { + New-Item -Path $MAVEN_M2_PATH -ItemType Directory | Out-Null +} + +$MAVEN_WRAPPER_DISTS = $null +if ((Get-Item $MAVEN_M2_PATH).Target[0] -eq $null) { + $MAVEN_WRAPPER_DISTS = "$MAVEN_M2_PATH/wrapper/dists" +} else { + $MAVEN_WRAPPER_DISTS = (Get-Item $MAVEN_M2_PATH).Target[0] + "/wrapper/dists" +} + +$MAVEN_HOME_PARENT = "$MAVEN_WRAPPER_DISTS/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.SHA256]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +$actualDistributionDir = "" + +# First try the expected directory name (for regular distributions) +$expectedPath = Join-Path "$TMP_DOWNLOAD_DIR" "$distributionUrlNameMain" +$expectedMvnPath = Join-Path "$expectedPath" "bin/$MVN_CMD" +if ((Test-Path -Path $expectedPath -PathType Container) -and (Test-Path -Path $expectedMvnPath -PathType Leaf)) { + $actualDistributionDir = $distributionUrlNameMain +} + +# If not found, search for any directory with the Maven executable (for snapshots) +if (!$actualDistributionDir) { + Get-ChildItem -Path "$TMP_DOWNLOAD_DIR" -Directory | ForEach-Object { + $testPath = Join-Path $_.FullName "bin/$MVN_CMD" + if (Test-Path -Path $testPath -PathType Leaf) { + $actualDistributionDir = $_.Name + } + } +} + +if (!$actualDistributionDir) { + Write-Error "Could not find Maven distribution directory in extracted archive" +} + +Write-Verbose "Found extracted Maven distribution directory: $actualDistributionDir" +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$actualDistributionDir" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..d2ce251 --- /dev/null +++ b/pom.xml @@ -0,0 +1,43 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 2.6.2 + + + nl.sdk + sdk-all + 0.0.1-SNAPSHOT + sdk + pom + sdk + + 8 + + + language + + + + org.springframework.boot + spring-boot-starter + + + org.springframework.boot + spring-boot-starter-web + + + cn.dev33 + sa-token-spring-boot-starter + 1.31.0 + + + com.alibaba + fastjson + 1.2.83 + + +