Skip to content

Versioned classes in META-INF cause errors #20

@jpenilla

Description

@jpenilla

When trying to process jars with versioned classes in META-INF I run into errors:

	Caused by: java.lang.RuntimeException: Failed to execute task META-INF/versions/9/org/wildfly/common/lock/JDKSpecific.class
		at net.minecraftforge.fart.internal.AsyncHelper.invokeAll(AsyncHelper.java:70)
		at net.minecraftforge.fart.internal.AsyncHelper.invokeAll(AsyncHelper.java:55)
		at net.minecraftforge.fart.internal.RenamerImpl.run(RenamerImpl.java:127)
		at net.minecraftforge.fart.internal.RenamerImpl.run(RenamerImpl.java:71)
		...
		at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)
		... 3 more
	Caused by: java.util.concurrent.ExecutionException: java.lang.StringIndexOutOfBoundsException: begin 0, end -1, length 5
		at java.util.concurrent.FutureTask.report(FutureTask.java:122)
		at java.util.concurrent.FutureTask.get(FutureTask.java:191)
		at net.minecraftforge.fart.internal.AsyncHelper.invokeAll(AsyncHelper.java:66)
		at net.minecraftforge.fart.internal.AsyncHelper.invokeAll(AsyncHelper.java:55)
		at net.minecraftforge.fart.internal.RenamerImpl.run(RenamerImpl.java:127)
		at net.minecraftforge.fart.internal.RenamerImpl.run(RenamerImpl.java:71)
		...
		at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)
		... 3 more
	Caused by: java.lang.StringIndexOutOfBoundsException: begin 0, end -1, length 5
		at java.lang.String.checkBoundsBeginEnd(String.java:4604)
		at java.lang.String.substring(String.java:2707)
		at net.minecraftforge.fart.internal.EntryImpl$ClassEntry.<init>(EntryImpl.java:67)
		at net.minecraftforge.fart.api.Transformer$ClassEntry.create(Transformer.java:146)
		at net.minecraftforge.fart.api.Transformer$ClassEntry.create(Transformer.java:149)
		at net.minecraftforge.fart.internal.RenamingTransformer.process(RenamingTransformer.java:60)
		at net.minecraftforge.fart.internal.EntryImpl$ClassEntry.process(EntryImpl.java:72)
		at net.minecraftforge.fart.internal.EntryImpl$ClassEntry.process(EntryImpl.java:50)
		at net.minecraftforge.fart.internal.RenamerImpl.processEntry(RenamerImpl.java:214)
		at net.minecraftforge.fart.internal.AsyncHelper.lambda$null$2(AsyncHelper.java:54)
		at java.util.concurrent.FutureTask.run(FutureTask.java:264)
		... 3 more

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions