skadistats / clarity

Comically fast Dota 2, CSGO, CS2 and Deadlock replay parser written in Java.
BSD 3-Clause "New" or "Revised" License
645 stars 120 forks source link

class file has wrong version 61.0, should be 52.0 #303

Open BusyLivingDota opened 1 year ago

BusyLivingDota commented 1 year ago

I don't know what happened while I was adding some other dependencies in pom file. Everything goes wrong and I got this message. I tried reinstall IDEA tried open a new Clarity-Example-Master project, but the problem still there. I am pretty sure I am using JAVA8. example2 example

C:\Users\lihao\IdeaProjects\clarity-examples-master\src\main\java\skadistats\clarity\examples\dump\Main.java:3:27 java: cannot access com.google.protobuf.GeneratedMessage bad class file: /C:/Users/lihao/.m2/repository/com/skadistats/clarity-protobuf/5.0-SNAPSHOT/clarity-protobuf-5.0-20230531.093536-2.jar!/com/google/protobuf/GeneratedMessage.class class file has wrong version 61.0, should be 52.0 Please remove or make sure it appears in the correct subdirectory of the classpath.

What shall I do?

spheenik commented 1 year ago

I am currently working on a new major version of clarity, see csgo2 branch. I have massively refactored the protobufs, and raised the minimum requirements to JDK 17. The new protobufs have a new major version for that, 5.0-SNAPSHOT. It seems that the maven dependency resolution does not understand it shouldn't use that (the version range says it cannot use 5.0 and above)

Fix would be to add a dependency management section in clarity-examples/pom.xml and fix the version to 4.31.

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.skadistats</groupId>
        <artifactId>clarity-protobuf</artifactId>
        <version>4.31</version>
      </dependency>
    </dependencies>
  </dependencyManagement>
BusyLivingDota commented 1 year ago

I upgraded to jdk17 and added the dependency management, everything cool now. Thanks for saving my life!

spheenik commented 1 year ago

Please leave issue open, as there may be other users running into this as well.