diff --git a/expect-platform-test/src/main/java/xyz/wagyourtail/ept/Main.java b/expect-platform-test/src/main/java/xyz/wagyourtail/ept/Main.java index c258afc..f5a322b 100644 --- a/expect-platform-test/src/main/java/xyz/wagyourtail/ept/Main.java +++ b/expect-platform-test/src/main/java/xyz/wagyourtail/ept/Main.java @@ -5,6 +5,11 @@ import xyz.wagyourtail.unimined.expect.annotation.PlatformOnly; import xyz.wagyourtail.unimined.expect.Target; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +@Main.TestAnnotation(Main.TestEnum.MAIN) public class Main { public static void main(String[] args) { @@ -24,6 +29,10 @@ public static void main(String[] args) { } catch (NoSuchMethodException e) { System.out.println("platformOnlyTest does not exist"); } + + // get annotation from class + TestAnnotation annotation = Main.class.getAnnotation(TestAnnotation.class); + System.out.println(annotation.value()); } @ExpectPlatform( @@ -54,4 +63,14 @@ public static void clientTest() { public static void environmentCheck(Environment env) { throw new AssertionError(); } + + public enum TestEnum { + MAIN + } + + @Retention(RetentionPolicy.RUNTIME) + @java.lang.annotation.Target(ElementType.TYPE) + public @interface TestAnnotation { + TestEnum value(); + } } diff --git a/gradle.properties b/gradle.properties index a6f0cec..e0e2c0e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ kotlin.code.style=official -version = 1.0.4 +version = 1.0.5 asmVersion=9.7 diff --git a/src/shared/java/xyz/wagyourtail/unimined/expect/TransformPlatform.java b/src/shared/java/xyz/wagyourtail/unimined/expect/TransformPlatform.java index b24fc52..e80e868 100644 --- a/src/shared/java/xyz/wagyourtail/unimined/expect/TransformPlatform.java +++ b/src/shared/java/xyz/wagyourtail/unimined/expect/TransformPlatform.java @@ -43,13 +43,18 @@ public void transform(Path inputRoot, Path outputRoot) throws IOException { if (parent != null) { Files.createDirectories(outputRoot.resolve(inputRoot.relativize(parent).toString())); } + Path output = outputRoot.resolve(inputRoot.relativize(path).toString()); + + if (!path.toString().endsWith(".class")) { + Files.copy(path, output, StandardCopyOption.REPLACE_EXISTING); + return; + } ClassReader reader = new ClassReader(Files.newInputStream(path)); ClassNode classNode = new ClassNode(); reader.accept(classNode, 0); classNode = transform(classNode); - Path output = outputRoot.resolve(inputRoot.relativize(path).toString()); ClassWriter writer = new ClassWriter(reader, 0); classNode.accept(writer);